MYSQL 模糊查询 LIKE

2017-01-06 10:08:42来源:oschina作者:ITCHN人点击

"_"是代表一个模糊字符,


"%"是代表零~多个字符 如果不加这两个符号,那么like 和=就是一样的


1.包含where name like ‘%明%’


2.以固定字符串开头结尾


where name like ‘李%’开头


where name like ‘%李’结尾


3.含有数字的where name like ‘%[0-9]%’ 4.不含有数字where name like ‘%[!0-9]%’


5.含有小写字母的 where name like ‘%[a-z]%’


引申:模糊查询带下划线 “_”的字符


方法1:使用escape转义


mysql> select * from t where x like '%/_%' escape '/';


返回包含有"_"的记录,正确


escape的内容可以任意,只要保证前后一致即可。


mysql> select * from t where x like '%|_%' escape '|';


返回包含有"_"的记录,正确


mysql> select * from t where x like '%*_%' escape '*';


返回包含有"_"的记录,正确


方式2:instr函数辅助判断


select * from t where instr(x,'_') !=0;


(备注:使用instr函数判断字段中是否包含“_”,如果包含返回值是非零的,如果不包含则返回值是零。)

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台