日期:2014-05-16  浏览次数:20804 次

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

%代表任意多个字符

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

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

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

?

?_代表一个字符

select * from user where username like '_'; 

select * from user where username like 'huxia_'; 

select * from user where username like 'h_xiao'; 

?

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

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

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

??