我想先按相关度排序match against搜索,然后再按listing_time列排序。相关性搜索效果很好,但是当我添加listing_time列时,搜索结果看起来像是随机的。
这是我的sql
SELECT title, listing_time, match(description) against('+clip' in boolean mode) as rel
FROM product order by rel desc这将在0.2秒内产生86个结果,并且所有结果都具有relevance 1。太棒了。
但是当我尝试使用额外的cloumn进行相同的搜索时
FROM product order by rel, listing_time desc我在27秒内得到了1000个结果,它们的相关性无处不在。太可怕了。
那么我该如何正确地做到这一点呢?我想要相关的结果,我想让他们按listing_time排序。
发布于 2016-03-21 00:52:43
我猜你打算让order by成为:
order by rel desc, listing_time desc
-------------^asc和desc应用于每个密钥。
您的问题中没有任何内容表明两个结果集是不同的,因此我猜测查询并不完全相同(例如,由于join或where子句)。
https://stackoverflow.com/questions/36116597
复制相似问题