我试图根据第一个字母订购mysql查询,但我使用的每一种方法都限制了我的搜索。
示例 MySQL表值计算机服务abc计算机服务动态计算机服务
如果我搜索computer services,我希望返回的结果如下:
**Name**
computer services
abc computer services
dynamic computer services我使用的是mysql全文搜索文本,但如果我使用name LIKE 'c%',则不会使用其他两个结果。
SELECT name FROM table WHERE match('name') against('computer services*' IN BOOLEAN MODE) AND name LIKE 'c%';这只会回来
但我想要它回来:
services
我是新的mysql全文搜索。
发布于 2011-02-08 16:39:12
首先使用与“开始”case匹配的order子句。我在这里使用not like,因为布尔值返回0或1,我们希望将其反转,以便首先与大小写匹配。
SELECT name
FROM table
WHERE match('name') against('computer services*' IN BOOLEAN MODE)
ORDER BY name NOT LIKE 'computer services%', name;https://stackoverflow.com/questions/4935563
复制相似问题