2014-01-16 83 views
1

如何編寫選擇查詢以選擇只包含列中單個單詞的記錄?選擇包含一個單詞的記錄的最有效方法

採取以下表爲例:

+--+---------------+ 
|id|name   | 
+--+---------------+ 
|1 |chicken  | 
+--+---------------+ 
|2 |cow   | 
+--+---------------+ 
|3 |mixed   | 
+--+---------------+ 
|4 |chicken bacon | 
+--+---------------+ 
|5 |chicken tenders| 
+--+---------------+ 
|6 |cow bacon  | 
+--+---------------+ 
|7 |cow tenders | 
+--+---------------+ 
|8 |mixed bacon | 
+--+---------------+ 
|9 |mixed tenders | 
+--+---------------+ 

在這種情況下,答案是chickencow,和mixed

回答

3

這可以幫助你:

SELECT * FROM YourTable WHERE name NOT LIKE '% %' 

你可以閱讀更多關於SELECT LIKE operandW3Schools

%符號也被稱爲SQL Wildcards之一,並且被低頻用於代替零個或多個字符。

查看更多about SQL Wildcards

+0

thx很多這個網站將幫助我提高我的技能,apreciate它。並且thx爲答案 – user2793090

+0

我很樂意提供幫助,如果這是對您的問題的回答,請接受它是一個答案,以便它可以解決某人的問題。取決於數據的 – Marek

+1

也可能希望在給定的查詢中對名稱做LTRIM/RTRIM。 –

1

只是要清楚,表達:

where name not like '% %' 

也會說'name '' name'' name '都超過一個字。對於這個工作適用於這些情況:

where ltrim(rtrim(name)) not like '% %' 
相關問題