W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
在mysql查詢中,經(jīng)常會用到通配符,而且mysql的通配符和pgsql是有所不同的,甚至mysql中還可以使用正則表達(dá)式。本文就為大家?guī)韒ysql查詢中通配符的使用。
SQL模式匹配:
“_” 匹配單個(gè)字符,”\_” 匹配”_”
“%” 匹配任意個(gè)字符,包括零個(gè)字符
sql模式下的匹配,缺省是對于字母的大小寫沒有要求,并且sql模式下,“=”或”!=”是不能在模糊匹配中使用的,而是使用 like 或 not like.
例如:
SELECT * FROM [user] WHERE u_name LIKE ‘%三%’;
SELECT * FROM [user] WHERE u_name LIKE ‘_三_’;
正則模式匹配:
當(dāng)使用正則匹配時(shí),使用REGEXP和NOT REGEXP操作符(或RLIKE和NOT RLIKE,功能是一樣的)。
其中涉及到的字符是:
“.” 匹配任何單個(gè)的字符。
“[…]” 表示匹配在方括號內(nèi)的任何字符。如,”[abc]” 則匹配”a”、”b”或者”c”,“[a-z]”匹配任何小寫字母,而“[0-9]”匹配任何數(shù)字。
“ * ”表示匹配零個(gè)或多個(gè)在它前面的東西。例如,“x*”匹配任何數(shù)量的“x”字符,“[0-9]*”匹配的任何數(shù)量的數(shù)字,而“.*”匹配任何數(shù)量的任何東西。
注意:正則表達(dá)式是區(qū)分大小寫的,但是我們也能使用一個(gè)字符類匹配兩種寫法。例如,“[aA]”匹配小寫或大寫的“a”而“[a-zA-Z]”匹配兩種寫法的任何字母。
為了定位一個(gè)模式以便它必須匹配被測試值的開始或結(jié)尾,在模式開始處使用“^”或在模式的結(jié)尾用“$”。
例如:
— 查尋以 三 開頭的名字
FROM [user] WHERE u_name REGEXP ‘^三’;
— 查尋以 三 結(jié)尾的名字
FROM [user] WHERE u_name REGEXP ‘三$’;
— “重復(fù)n次”操作符重寫先前的查詢:
FROM [user] WHERE u_name REGEXP ‘b{2}$’;
推薦閱讀:
原文地址:26點(diǎn)的博客 ? mysql查詢中通配符的使用
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: