【发布时间】:2012-08-13 06:30:59
【问题描述】:
SQL Server 2008:
我有一个使用WHERE 子句查找具有特定字符串的行的查询。因此,假设我正在寻找带有字符串 1234 的条目,查询将类似于...
SELECT * FROM [table] WHERE [column] LIKE '1234'
尽管此查询有效,但它也返回带有字符串1234 [A] 和1234 [B] 的行。
我不确定为什么它的行为就像我在使用 % 通配符运算符一样。所以,我需要一些能返回严格相等的东西。我有一段时间没有使用 Microsoft SQL Server,所以我想知道我是否遗漏了一些明显的东西。我查看了COLLATION,但这似乎只处理区分大小写和重音的问题。
【问题讨论】:
-
只需使用相等运算符,例如。 “[列] = '1234'”
-
这里使用
=而不是LIKE是正常的,但是您发布的查询应该可以满足您的需求。可能有不同的问题。 -
支持您的查询还有其他问题的概念。无论如何,您都应该使用 =,除非您确实需要在某些查询上使用 LIKE 进行模式匹配,但是您发布的查询应该返回您期望的结果。
标签: sql sql-server-2008 select where