模糊查詢sql語句的方法 有哪些注意事項(xiàng)
下面是小編整理的模糊查詢sql語句的方法,希望能對各位讀者有所幫助。
sql模糊查詢的語法為“SELECT column FROM table WHERE column LIKE 'pattern'”,一共有四種匹配模式。
%表示任意0個(gè)或多個(gè)字符??善ヅ淙我忸愋秃烷L度的字符,有些情況下若是中文,請使用兩個(gè)百分號(%%)表示。
_表示任意單個(gè)字符。模糊查詢sql語句是匹配單個(gè)任意字符,它常用來限制表達(dá)式的字符長度語句。
[ ]表示括號內(nèi)所列字符中的一個(gè)(類似正則表達(dá)式)。指定一個(gè)字符、字符串或范圍,要求所匹配對象為它們中的任一個(gè)。
[^ ]表示不在括號所列之內(nèi)的單個(gè)字符。其取值和 [] 相同,但它要求所匹配對象為指定字符以外的任一個(gè)字符。
sql查詢內(nèi)容包含通配符時(shí),由于通配符的緣故,導(dǎo)致我們查詢特殊字符“%”、“_”、“[”的語句無法正常實(shí)現(xiàn),而把特殊字符用“[ ]”括起便可正常查詢。在不同的數(shù)據(jù)庫中,sql模糊搜索的語句會有不同,可在系統(tǒng)幫助文檔中了解。
模糊查詢sql語句有哪些注意事項(xiàng)SQL模糊查詢,使用like比較關(guān)鍵字,加上SQL里的通配符,請參考以下:
1、LIKE’Mc%’ 將搜索以字母 Mc 開頭的所有字符串(如 McBadden)。
2、LIKE’%inger’ 將搜索以字母 inger 結(jié)尾的所有字符串(如 Ringer、Stringer)。
3、LIKE’%en%’ 將搜索在任何位置包含字母 en 的所有字符串(如 Bennet、Green、McBadden)。
4、LIKE’_heryl’ 將搜索以字母 heryl 結(jié)尾的所有六個(gè)字母的名稱(如 Cheryl、Sheryl)。
5、LIKE’[CK]ars[eo]n’ 將搜索下列字符串:Carsen、Karsen、Carson 和 Karson(如 Carson)。
6、LIKE’[M-Z]inger’ 將搜索以字符串 inger 結(jié)尾、以從 M 到 Z 的任何單個(gè)字母開頭的所有名稱(如 Ringer)。
7、LIKE’M[^c]%’ 將搜索以字母 M 開頭,并且第二個(gè)字母不是 c 的所有名稱(如MacFeather)。
模糊搜索的定義主要有兩種觀點(diǎn)一種是系統(tǒng)允許被搜索信息和搜索提問之間存在一定的差異,這種差異就是“模糊”在搜索中的含義。例如,查找名字Smith時(shí),就會找出與之相似的Smithe, Smythe, Smyth, Smitt等。
另一種是實(shí)質(zhì)上的搜索系統(tǒng)自動進(jìn)行的同義詞搜索。同義詞由系統(tǒng)的管理界面配置。例如,配置“計(jì)算機(jī)”與“computer”為同義詞后,搜索“計(jì)算機(jī)”,則包含“computer”的網(wǎng)頁也會出現(xiàn)在搜索結(jié)果中。