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 * FROM [user] WHERE u_name LIKE ‘%三%’ AND u_name LIKE ‘%貓%’
若使用 SELECT * FROM [user] WHERE 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,轉義字符後面的%或_就不作爲通配符了,注意前面沒有轉義字符的%和_仍然起通配符作用
Sql代碼
select username from gg_user where username like '%xiao/_%' escape '/';
select username from gg_user where username like '%xiao/%%' escape '/';