MySQL基础之LIKE模糊查询

在MySQL中,LIKE关键字主要用于搜索匹配字段中的指定内容 语法格式:[NOT] LIKE 指定字符串

    NOT:可选参数,字段中的内容与指定字符串不匹配时满足条件 字符串:指定用来匹配的字符串,可以是很完整的字符串,也可以包含通配符 示例:SELECT * FROM user WHERE name LIKE ws茹洁9480 NOT LIKE示例:SELECT * FROM user WHERE name NOT LIKE ws茹洁9480

包含通配符查询

通配符是一种特殊语句,主要用来模糊查询。当不知道真正字符或者想不输入完整语句时,可以用来代替一个或多个真正的字符 模糊查询中包含两个通配符:

    %:最常用的通配符,代表任何长度的字符串,字符串的长度可以为0 _:只能代表单个字符,字符的长度不能为0

包含通配符%的使用

例1:查询以指定字符串开头的值 语法格式:SELECT * FROM 表 WHERE 列 LIKE 指定字符串% 示例:SELECT * FROM user WHERE name LIKE wsnk% 例2:查询以指定字符串结束的值 语法格式:SELECT * FROM 表 WHERE 列 LIKE %指定字符串 示例:SELECT * FROM user WHERE name LIKE %wsnk 例3:查询包含指定字符串的值 语法格式:SELECT * FROM 表 WHERE 列 LIKE %指定字符串% 示例:SELECT * FROM user WHERE name LIKE %wsnk%

包含通配符_的使用

例:第三个字符以指定字符串开始,并后面只有三个字符 语法格式:SELECT * FROM 表 WHERE 列 LIKE __指定字符串___ 示例:SELECT * FROM user WHERE name LIKE __微___ 说明:_通配符一般在特定情况下使用,需要多少位就有几个通配符,可以与%通配符组合使用,但是项目中一般都是使用【%通配符例3】

注意:

1.MySQL中值不分区大小写,如果需要区分大小写,则加入BINARY关键字 语法格式:SELECT * FROM 表 WHERE 列 LIKE BINARY %指定字符串% 示例:SELECT * FROM user WHERE name LIKE BINARY %WS% 2.注意通配符左右的空格,空格会干扰通配符的匹配 语法格式:SELECT * FROM 表 WHERE 列 LIKE % 指定字符串% 示例:SELECT * FROM user WHERE name LIKE % ws% 3.注意NULL,通配符不能匹配NULL值

拓展:

如果查询内容中包含通配符,则可以使用""转义符 语法格式:SELECT * FROM 表 WHERE 列 LIKE %指定字符\%串% 示例:SELECT * FROM user WHERE name LIKE % w\%s%

经验分享 程序员 微信小程序 职场和发展