一、概念介紹
萬用字元(wildcard):用來匹配值的一部分的特殊字元。
搜尋模式(search pattern):由字面值、萬用字元或兩者組合構成的搜尋條件。
like操作符:為在搜尋子句中使用萬用字元,必須使用like操作符。like操作符只是mysql後跟的搜尋模式利用萬用字元匹配而不是直接相等匹配進行比較。
謂詞:操作符何時不是操作符?答案是它作為謂詞(predicate)時。從技術上說,like是謂詞而不是操作符。雖然最終的結果是相同的。
二、百分號(%)萬用字元
在搜尋串中,%表示任何字元出現任意次數。例如,為了找出所有以詞jet開頭的產品,可使用一下select語句:
mysql> use crashcourse;
mysql> select prod_id, prod_name
-> from products
-> where prod_name like
'jet%';
注意區分大小寫:根據mysql的配置方式,搜尋可以是區分大小寫的。如果區分大小寫,本例子將沒有任何資料返回。萬用字元可以在搜尋模式中任意位置使用,並可以使用多個萬用字元。下面例子使用兩個萬用字元,他們位於模式的兩端:
mysql> select prod_id, prod_name
-> from products
-> where prod_name like
'%anvil%';
注意:由本次試驗可知,%處理可以匹配乙個或多個字元外,%還可以匹配0個字元。
三、下劃線(_)萬用字元
下劃線萬用字元和%用途一樣,但下劃線萬用字元只能匹配單個字元。舉個例子:
mysql> select prod_id, prod_name
-> from products
-> where prod_name like
'_ ton anvil';
若把本示例中的_換成%,執行結果如下:
發現用%來匹配多了一行。與%能匹配0個字元不一樣,_總是匹配乙個字元,不能多也不能少。
MySQL用萬用字元進行過濾
萬用字元 用來匹配值的一部分的特殊字元 搜尋模式 由字面值 萬用字元或者兩者組合成的搜尋條件 在搜尋字句中使用萬用字元,必須使用like操作符,like操作符指示mysql後跟的搜尋模式是萬用字元匹配而不是直接相等匹配。百分號 萬用字元 表示任何字串出現任意次數 1萬用字元位於搜尋模式最後 sele...
mysql學習筆記 用萬用字元進行過濾
like操作符 萬用字元 用來匹配值的一部分的特殊字元 搜尋模式 由字面值 萬用字元或兩者組合構成的搜尋條件。萬用字元 在搜尋串中,表示任何字元出現的任意次數。例如,找出以b開頭的姓名。select name from pet where name like b 相當於 就是b後面的任意字元。萬用字...
SQL用萬用字元進行過濾
使用萬用字元必須使用like操作符。萬用字元搜尋只能用於文字字段 字串 非文字資料型別字段不能使用萬用字元搜尋。百分號 萬用字元 表示任何字元出現任意次數,代表搜尋模式中給定位置的0個 1個或者多個字元。萬用字元 不可以匹配null。下劃線 萬用字元 下劃線 的用途與 一樣,但是它只匹配單個字元,而...