綠色資(zī)源網:您身(shēn)邊最放心(xīn)的安(ān)全(quán)下載站! 最新軟件|熱門排行|軟件分類(lèi)|軟件(jiàn)專題|廠商大全

綠色(sè)資(zī)源網

技術教程
您(nín)的位置:首(shǒu)頁數據庫類SQL Server → SQL語句 SELECT LIKE用法(fǎ)詳解

SQL語句 SELECT LIKE用法(fǎ)詳解

我要評論 2011/03/10 19:00:43 來源:綠色資源網 編輯:綠色資源站 [大(dà) ] 評論:0 點擊:136次

在SQL結構化查詢語言中,LIKE語句有著至關重要(yào)的作用。
  
  LIKE語句(jù)的語法格式是:select * from 表名(míng) where 字段(duàn)名 like 對(duì)應值(zhí)(子串),它(tā)主要是針對字符型字段的,它的作(zuò)用是在一個字符(fú)型(xíng)字(zì)段列(liè)中檢索包含對應子(zǐ)串的。

A:% 包含零(líng)個(gè)或多個字符的任意字符串(chuàn)

1、LIKE'Mc%' 將搜索以(yǐ)字母 Mc 開頭的(de)所有字符串(如 McBadden)。
2、LIKE'%inger' 將搜索以字母 inger 結尾的所有字符串(chuàn)(如 Ringer、Stringer)。
3、LIKE'%en%' 將搜索在任何位置(zhì)包含字(zì)母(mǔ) en 的所有字符串(如(rú) Bennet、Green、McBadden)。

 B:_(下劃(huá)線) 任(rèn)何單(dān)個(gè)字符:

LIKE'_heryl' 將搜索(suǒ)以字母 heryl 結(jié)尾的(de)所有六個字母的名稱(如 Cheryl、Sheryl)。

C:[ ] 指定範圍 ([a-f]) 或集合(hé) ([abcdef]) 中的(de)任何單個字符(fú):

1,LIKE'[CK]ars[eo]n' 將搜索(suǒ)下列(liè)字符串:Carsen、Karsen、Carson 和 Karson(如 Carson)。
2、LIKE'[M-Z]inger' 將搜(sōu)索(suǒ)以字符串(chuàn) inger 結尾、以從 M 到 Z 的任何單個字母開(kāi)頭的所有(yǒu)名稱(如 Ringer)。

D:[^] 不屬(shǔ)於指定範(fàn)圍 ([a-f]) 或集合 ([abcdef]) 的任何單個字符:

LIKE'M[^c]%' 將搜索(suǒ)以字母 M 開頭,並且第二個字母不是(shì) c 的所(suǒ)有名稱(如MacFeather)。

E:* 它同於DOS命令中的通配(pèi)符,代表多個字符:

c*c代(dài)表cc,cBc,cbc,cabdfec等多(duō)個(gè)字符(fú)。

F:?同於DOS命令中的?通配符,代表單個字(zì)符 :b?b代表brb,bFb等
G:# 大致(zhì)同上,不(bú)同的是代(dài)隻能代表單個數字。k#k代表(biǎo)k1k,k8k,k0k 。
F:[!] 排除(chú) 它隻代表單個字(zì)符

下麵我們來舉例說明一下:
  例1,查詢name字段中包含有“明”字的。
  select * from table1 where name like '%明%'
  
  例2,查詢name字段中以“李(lǐ)”字(zì)開(kāi)頭。
  select * from table1 where name like '李(lǐ)*'
  
  例(lì)3,查詢(xún)name字段中含有(yǒu)數字的。
  select * from table1 where name like '%[0-9]%'
  
  例4,查詢name字段中含有小(xiǎo)寫字母(mǔ)的(de)。
  select * from table1 where name like '%[a-z]%'
  
  例5,查詢name字段中不含有數字的。
  select * from table1 where name like '%[!0-9]%'
  
  以上例子(zǐ)能列(liè)出什(shí)麽值(zhí)來顯而易見。但(dàn)在這(zhè)裏(lǐ),我們著重要說明的是通(tōng)配符“*”與“%”的區別。
  
  很多朋友會問,為什麽我在以上(shàng)查詢時有個別的表示所(suǒ)有字符的時候用"%"而不用“*”?先(xiān)看看下麵(miàn)的例子能分別出現(xiàn)什麽結果:
  select * from table1 where name like '*明*'
  select * from table1 where name like '%明(míng)%'
  
  大家會看到,前一條語句列出來的是所有的(de)記錄,而後一條(tiáo)記錄列出來的(de)是name字段中含有“明”的記錄,所以(yǐ)說,當我們(men)作字(zì)符(fú)型字段(duàn)包含一個子串(chuàn)的查(chá)詢時最好采(cǎi)用“%”而不用“*”,用(yòng)“*”的時候隻在開頭或者隻(zhī)在結尾時,而不能兩(liǎng)端全由“*”代替任意(yì)字符的情況下。

關(guān)鍵詞:SQL語句,SELECT,LIKE

閱讀本文後(hòu)您有什(shí)麽感想? 已有 人給出評價!

  • 0 歡迎(yíng)喜(xǐ)歡
  • 0 白(bái)癡
  • 0 拜托
  • 0 哇
  • 0 加油
  • 0 鄙視