1
目前,我使用此查询,这确实是“最相关的”寻找最相关的结果和排序第一的一个不错的工作:如何使用MATCH(),ROUND()和子查询编写MySQL全文查询?
SELECT *,
MATCH(text) AGAINST('$keyword') AS score
FROM table_name
WHERE MATCH(text) AGAINST('$keyword')
ORDER BY score DESC
LIMIT $s, 20
将会产生类似的结果:
text | score | date
---------------------------------------
hotdogs | 13.2345 | Dec 5, 2005
hamburgers | 13.0765 | July 4, 2008
pizza | 8.0987 | Oct 7, 2006
现在我试图重写查询来将分数四舍五入到整数,然后按日期DESC对它们进行排序。所以,我们的目标是取得成果,如:
text | score | date
---------------------------------------
hamburgers | 13 | July 4, 2008
hotdogs | 13 | Dec 5, 2005
pizza | 3 | Oct 7, 2006
我猜我需要使用ROUND(分数)的一些混合,GROUP BY得分,然后ORDER BY日期DESC - 但我无法弄清楚如何以成功添加。我已经尝试了很多子查询,但是我无法使其工作。有任何想法吗?提前感谢您的任何指针!
完美。这正是我需要的。谢谢! – justin 2010-03-06 18:01:58