mysql 中模糊查詢(xún)有兩種,一種LIKE, NOT LIKE 。另一種就是匹配 REGECXP, NOT REGEXP。
LIKE NOT LIKE
1、%
表示任意幾個(gè)字符,比如:
select * from T_Bank where BankName like '%農(nóng)%'
將查詢(xún)出BankName中任何帶有 ‘農(nóng)’的數(shù)據(jù)。
2、_
任意單個(gè)字符,比如:
select * from T_Bank where BankName like '農(nóng)'
只會(huì)查詢(xún)出BankName 有三個(gè)字中間一個(gè)是‘農(nóng)’的數(shù)據(jù)。
3、[]
表示匹配[ ] 內(nèi)的任意一個(gè)字符比如:
select * from T_Bank where BankName like '[張李王]三'
只會(huì)查詢(xún)出張三、李三、王三 的數(shù)據(jù)。
[0-9],[a-e] 表示[0123456789] [abcde]等。
4、[^]
表示取反,查詢(xún)出不是某些匹配的數(shù)據(jù)比如:
select * from T_Bank where BankName like '[^張李王]三'
表示查詢(xún)出排除張三、李三、王三 的數(shù)據(jù)。
REGECXP, NOT REGEXP
1、^
表示以某個(gè)字符開(kāi)頭的比如:
select * from T_Bank where BankName REGEXP '^中國(guó)'
查詢(xún)出以中國(guó)開(kāi)頭的數(shù)據(jù)
2、$
表示查詢(xún)出以某個(gè)字符結(jié)尾的比如:
select * from T_Bank where BankName REGEXP '移動(dòng)$'
查詢(xún)出以移動(dòng)結(jié)尾的數(shù)據(jù)。
3、.
表示任意字符
select * from T_Bank where BankName REGEXP '.移.'
查詢(xún)出以任意帶有‘移’的數(shù)據(jù)。
4、*
匹配0 或者多個(gè)字符,前面必須有字符
select * from T_Bank where BankName REGEXP '中國(guó)'
查詢(xún)出中國(guó)開(kāi)頭的所有字符
5、
select * from T_Bank where BankName REGEXP '中國(guó)'
查詢(xún)出任意含有中國(guó)的數(shù)據(jù)
6、a
匹配任意多個(gè)a(包括空串)
7、a+
匹配任意多個(gè)a(不包括空串)
8、a?
匹配一個(gè)或零個(gè)a
9、a|b
匹配a或者b