如何编写选择查询来选择列中只包含一个单词的记录?
以下表为例:
+--+---------------+
|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 |
+--+---------------+
在这种情况下,答案为chicken
,cow
和mixed
。
答案 0 :(得分:3)
这可能会对您有所帮助:
SELECT * FROM YourTable WHERE name NOT LIKE '% %'
您可以在W3Schools上详细了解SELECT LIKE operand
。
%
也称为SQL Wildcards
之一,用于替换零个或多个字符。
详细了解SQL Wildcards。
答案 1 :(得分:1)
要清楚,表达式为:
where name not like '% %'
还会说'name '
,' name'
和' name '
都不止一个字。为此适用于这些情况:
where ltrim(rtrim(name)) not like '% %'