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'
    MySQL基础之LIKE模糊查询_第1张图片

包含通配符查询

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

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

包含通配符%的使用

例1:查询以指定字符串开头的值
语法格式:SELECT * FROM 表 WHERE 列 LIKE '指定字符串%'
示例:SELECT * FROM user WHERE name LIKE 'wsnk%'
MySQL基础之LIKE模糊查询_第2张图片
例2:查询以指定字符串结束的值
语法格式:SELECT * FROM 表 WHERE 列 LIKE '%指定字符串'
示例:SELECT * FROM user WHERE name LIKE '%wsnk'
在这里插入图片描述
例3:查询包含指定字符串的值
语法格式:SELECT * FROM 表 WHERE 列 LIKE '%指定字符串%'
示例:SELECT * FROM user WHERE name LIKE '%wsnk%'
MySQL基础之LIKE模糊查询_第3张图片

包含通配符_的使用

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

注意:

1.MySQL中值不分区大小写,如果需要区分大小写,则加入BINARY关键字
语法格式:SELECT * FROM 表 WHERE 列 LIKE BINARY '%指定字符串%'
示例:SELECT * FROM user WHERE name LIKE BINARY '%WS%'
MySQL基础之LIKE模糊查询_第5张图片
2.注意通配符左右的空格,空格会干扰通配符的匹配
语法格式:SELECT * FROM 表 WHERE 列 LIKE '% 指定字符串%'
示例:SELECT * FROM user WHERE name LIKE '% ws%'
在这里插入图片描述
3.注意NULL,通配符不能匹配NULL值
MySQL基础之LIKE模糊查询_第6张图片

拓展:

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

你可能感兴趣的:(数据库技术,mysql,数据库,sql)