我有一个搜索查询,能够根据查询中实际显示的单词数量,按相关性对结果进行排序。统计单个单词中的单词出现次数
SELECT id,
thesis
FROM activity p
WHERE p.discriminator = 'opinion'
AND (thesis LIKE '%gun%'
OR thesis LIKE '%crucial%')
ORDER BY ((CASE
WHEN thesis LIKE '%gun%' THEN 1
ELSE 0
end)
+ (CASE
WHEN thesis LIKE '%crucial%' THEN 1
ELSE 0
end))
DESC
但是,这个查询并不根据“枪”或“关键”出现的次数来排序。我想让它记录更多的“枪”出现在记录上方,出现次数较少。 (IE,加点每次枪显示出来,而不是增加一个点,因为枪至少一次显示出来)
感谢您的评论,我决定去提前使用sphinx作为我们的用例。 – Furyvore 2012-08-13 22:47:55
很酷,谢谢接受!狮身人面像是一个有趣的索引工具。 – cgwyllie 2012-08-21 08:24:36