时间:2021-07-01 10:21:17 帮助过:4人阅读
SELECT *, ((`title` like '%我们%' and `title` like '%他们%') * 0.8 + (`title` like '%我们%' or `title` like '%他们%') * 0.2) AS relevance FROM text WHERE (`title` like '%我们%' and `title` like '%他们%') or (`title` like '%我们%' or `title` like '%他们%') ORDER BY relevance DESC limit 6
------解决方案--------------------
SELECT * FROM ( SELECT * FROM `text` where `title` like '%我们%' and `title` like '%他们%' ) tt WHERE `title` like '%我们%' or `title` like '%他们%' limit 6;
------解决方案--------------------
SELECT *, 1 as xh FROM text where (`title` like '%我们%' and `title` like '%他们%') union SELECT *, 2 as xh FROM text where (`title` like '%我们%' or `title` like '%他们%') order by xh limit 6