06 用萬用字元進行過濾

2022-09-02 09:57:09 字數 2543 閱讀 2612

1.like

操作符萬用字元:用來匹配值的一部分的特殊字元。實際上是

sql的

where

子句中含有特殊含義的字元,在搜尋子句中使用萬用字元,必須使用

like

操作符指示

dbms

,後跟的搜尋模式利用萬用字元匹配而不是簡單的相等匹配進行比較。

搜尋模式:由字面值、萬用字元或者兩者組合構成的搜尋條件。

謂詞:like

是謂詞而不是操作符。操作法作為謂詞時不是操作符。

萬用字元搜尋只能用於文字字段(字串),不能用於非文字資料型別字段。

(1)百分號(

%)萬用字元

%表示任何字元出現任意次數,表示搜尋模式中給定位置的0個、

1個或多個字元,是最常用的萬用字元。

輸入:select prod_id, prod_name

from products

where prod_name like 'fish%';

輸出:

搜尋模式為

'fish%'

,檢索任意

fish

開頭的詞。根據

dbms

的不同及其配置,搜尋可以區分大小寫,不過這裡使用的

mysql

沒有區分。

萬用字元可以在搜尋模式的任意位置使用,並且可以使用多個萬用字元。

下面使用兩個位於模式兩端的萬用字元,輸入:

select prod_id, prod_name

from products

where prod_name like '%bean bag%';

輸出:搜尋模式

'%bean bag%'

表示匹配任何位置上包含文字

bean bag

的值,不管它之前或之後出現什麼字元。

萬用字元也可以出現在搜尋模式的中間,下面找出以

f開頭,以

y結尾的所有產品,輸入:

select prod_name

from products

where prod_name like 'f%y';

輸出:

注意,萬用字元

%不能匹配

null

。子句where prod_name like '%'

不會匹配產品名次為

null

的行。(2)

下劃線(

_)萬用字元

只能匹配單個字元。

輸入:select prod_id, prod_name

from products

where prod_name like '__ inch teddy bear';

輸出:

該搜尋模式只能匹配兩個萬用字元。下面的

select

語句使用

%萬用字元,返回三行產品,輸入:

select prod_id, prod_name

from products

where prod_name like '% inch teddy bear';

輸出:

(3)方括號(

)萬用字元

用來指定乙個字符集,必須匹配指定位置的乙個字元。

注意:mysql

不支援集合,因此以下檢索不附上執行結果。

為了找出所有名字以j或

m開頭的聯絡人,可輸入:

select cust_contact

from customers

where cust_contact like '[jm]%'

order by cust_contact;

此萬用字元可以用字首字元

^(脫字型大小)來否定,優點是使用多個

where

子句時可以簡化語法。

輸入:select cust_contact

from customers

where cust_contact like '[^jm]%'

order by cust_contact;

也可以使用

not操作符來否定,輸入:

select cust_contact

from customers

where not cust_contact like '[jm]%'

order by cust_contact;

2.使用萬用字元的技巧

(1)不要過度使用萬用字元。若有操作符能達到相同目的,應該使用操作符。

(2)確實需要萬用字元時,盡量不要放在搜尋模式的開始處,這樣搜尋速度很慢。

(3)仔細注意萬用字元的位置。

MySQL用萬用字元進行過濾

萬用字元 用來匹配值的一部分的特殊字元 搜尋模式 由字面值 萬用字元或者兩者組合成的搜尋條件 在搜尋字句中使用萬用字元,必須使用like操作符,like操作符指示mysql後跟的搜尋模式是萬用字元匹配而不是直接相等匹配。百分號 萬用字元 表示任何字串出現任意次數 1萬用字元位於搜尋模式最後 sele...

SQL用萬用字元進行過濾

使用萬用字元必須使用like操作符。萬用字元搜尋只能用於文字字段 字串 非文字資料型別字段不能使用萬用字元搜尋。百分號 萬用字元 表示任何字元出現任意次數,代表搜尋模式中給定位置的0個 1個或者多個字元。萬用字元 不可以匹配null。下劃線 萬用字元 下劃線 的用途與 一樣,但是它只匹配單個字元,而...

5 用萬用字元進行過濾

使用萬用字元以及使用like操作符進行通配搜尋,以便對資料進行複雜過濾。一 like操作符 1.1 百分號 萬用字元 最常用的萬用字元是百分號,在搜尋串中,表示任意字元出現任意次數。select vend id,prod price,prod name from products where pro...