MySql模糊查询like通配符使用

MySql的like语句中的通配符:百分号、下划线和escape

 

%:表示任意个或多个字符。可匹配任意类型和长度的字符。

Sql代码

select * from user where username like '%huxiao';   
select * from user where username like 'huxiao%';   
select * from user where username like '%huxiao%';   

另外,如果需要找出u_name中既有“三”又有“猫”的记录,请使用and条件

SELECT * FROMuserWHERE u_name LIKE ‘%三%’ AND u_name LIKE ‘%猫%’

若使用

SELECT * FROMuserWHERE u_name LIKE ‘%三%猫%’

虽然能搜索出“三脚猫”,但不能搜索出符合条件的“张猫三”。

_:表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句:(可以代表一个中文字符)

Sql代码

select * from user where username like '_';   
select * from user where username like 'huxia_';   
select * from user where username like 'h_xiao';   

 

escape: 如果我就真的要查%或者_,怎么办呢?使用escape,转义字符后面的%或_就不作为通配符了,注意前面没有转义字符的%和_仍然起通配符作用

Sql代码

select username from gg_user where username like '%xiao/_%' escape '/';    
select username from gg_user where username like '%xiao/%%' escape '/';

关注公众号,了解更多it技术(it问答网

发表评论

电子邮件地址不会被公开。