我有以下查询
SELECT *,MATCH(title,text)AGAINST('我的家'在布尔模式下)为 相关性来自
blog
,其中active
= 1
上述查询返回5行,相关性为2,2,0,0,0
现在我想只选择具有最大相关性的行。 所以它应该只返回有2作为相关性的行。
我尝试了以下查询。
SELECT *,MATCH(title,text)AGAINST('我的家'在布尔模式下) 作为相关性来自
blog
,其中active
= 1 相关性=最大值(MATCH(标题,文本)AGAINST('我的家'在布尔值 模式))
但它只返回一行..
有没有办法只获得那两行?
答案 0 :(得分:1)
SELECT *, MATCH(title,text) AGAINST('my home' in boolean mode) as relevance
FROM blog
where active = 1
and MATCH(title,text) AGAINST('my home' in boolean mode) = (select max(MATCH(title,text) AGAINST('my home' in boolean mode)) from blog)