1-1 通配符的分类
1、"%" 百分号通配符: 表示任何字符出现任意次数 (可以是0次)。
2、"_" 下划线通配符:表示只能匹配单个字符,不能多也不能少,就是一个字符。
当然,也可以like "陈____",数量不限。
3、like操作符:LIKE作用是指示mysql后面的搜索模式是利用通配符而不是直接相等匹配进行比较;但如果like后面没出现通配符,则在SQL执行优化时将 like 默认为 “=”执行
模糊查询------>> ’查询值‘
例如:匹配带 乔 字的数据:‘%乔%’;
匹配第二个字是 乔 的数据:‘_乔_’;
匹配开头是 万 ,结尾是 顿 的数据:‘万%顿’;
“%” 匹配两个或两个以上的字符;
"_"只能匹配单个字符;
带like(像)的字符匹配查询 与“%”或“_”一起使用; | SELECT * FROM 表名 WHERE 字段名 LIKE 查询值; 例如:SELECT * FROM departments WHERE dname LIKE '%王%'; |
查询以查询值1开头, 以查询之2结尾 | select * from 表名 where 字段名 like '开头字%结尾字'; |
模糊匹配以“网”字结尾的数据 | SELECT * from 表名 where 字段名 like '%网'; |
'%'通配符
模糊匹配含有“网”字的数据 | SELECT * from 表名 where 字段名 like '%网%'; |
模糊匹配以‘网’字结尾的数据 | SELECT * from 表名 where 字段名 like '%网'; |
模糊匹配以'网'字开头的数据 | SELECT * from 表名 where 字段名 like '网%'; |
精准匹配, 字段名 like '网' 等同于:字段名 = '网' | SELECT * from 表名 where 字段名 = '网'; -- 等同于 SELECT * from 表名 where 字段名 like '网'; |
模糊匹配含有“xxx网xxx车xxx”的数据, 如:"途途网约车司机端、网络约车平台" | SELECT * from 表名 where 字段名 like '%网%车%'; |
'_'通配符
注意:'%__网、__%网' 等同于 '%网'
查询以“网”为结尾的,长度为三个字的数据, 如:"链家网", | SELECT * from 表名 where 字段名 like '__网'; |
查询前三个字符为XX网,后面任意匹配, 如:"城通网盘、模具网平台" | SELECT * from 表名 where 字段名 like '__网%'; |
模糊匹配含有“xx网x车xxx”的数据, 如:"携程网约车客户端" | SELECT * from 表名 where 字段名 like '__网_车%'; |