2010-11-15 94 views
0

我需要返回包含某些字母或字母組合的所有人的姓名。sql簡單問題幫助

例如

names = bob, mary, nick 

以字母 「B」

returns bob 

返回名稱以字母回報名 「AR」

returns mary 

所以

SELECT name 
FROM people 
WHERE ??? 
+0

這些名稱是否在單個列中,例如在列內逗號分隔?這對於SQL數據庫來說是非常糟糕的設計...... – 2010-11-15 07:11:13

+0

不,這些值是原子的,每個名稱都有它自己的空間 - 在列 – 2010-11-15 07:12:45

回答

0
WHERE name LIKE '%ar%'
用於MS-Access的

,使用

WHERE name LIKE '* ar *'
忽略*和'ar'之間的空格。請參閱 http://office.microsoft.com/en-us/access-help/like-operator-HP001032253.aspx

+0

hmmm。它不與我們在Microsoft Access中給出的數據庫一起工作,表名中都有「 - 」,因此名稱必須放在方括號內,這可能是一個問題 – 2010-11-15 07:04:04

+0

我們都假設你有一張名爲「人「,有一個名爲」名字「的專欄,這是否正確?如果是這樣,我們提供的樣品應該工作。你能提供一些更多的細節,比如數據庫類型,以及你使用哪個工具來嘗試這個查詢。 – KBoek 2010-11-15 07:07:44

+0

它只是在訪問sql編輯器。我去SELECT [people-name] FROM people,which works,but when we say WHERE [people-name] LIKE'%ar%';它無法工作 – 2010-11-15 07:10:46

0
SELECT name 
FROM people 
WHERE name like '%ar%'

%就像是 「永遠是什麼」
可以使用LIKE%只是字符串字段

0

使用 '喜歡' 操作者使用,你可以做到這一點

0
WHERE NAME LIKE '%<letter-or-string>%' 
0
SELECT name 
FROM people 
WHERE name like '%ar%' ----returns Mary 

WHERE name like 'b%' ----returns bob 

WHERE name like '%k' ----returns nick 

注意:不要一起執行所有'where'條件。