mysql关键字匹配度模糊查询
阅读原文时间:2023年09月07日阅读:1

有时候项目中需要进行模糊查询,但是要对查询出来的结果进行匹配度排序,比如搜索关键字是“北”,需要把数据库中第一个字是北的排在前面,此时就可以用mysql的INSTR函数。

INSTR(字段名, 字符串)

这个函数返回字符串在某一个字段的内容中的位置, 没有找到字符串返回0,否则返回位置(从1开始)。

例1:升序排

SELECT * FROM `area_info` WHERE areaName LIKE  '%县%'  ORDER BY  INSTR(areaName,"县")

例2:降序排

其它例子:

SELECT * FROM tblTopic ORDER BY INSTR( topicTitle, 'ha' ) > 0 DESC

SELECT INSTR( topicTitle, 'ha' ) FROM tblTopic