2

如何使用“like”运算符编写查询,该运算符仅匹配包含多个空格的文本字段,仅此而已。例如' '、' '、' '等是应该被找到的字符串。'text', 'text' -- 不应包含在结果集中 (Sql Server 2008 R2)

4

2 回答 2

4

您可以使用RTRIMorLTRIM并检查空字符串,但是,正如 JNK 指出的那样,在 SQL Server 中,您只需检查空字符串,它将忽略空格。这是一个显示的 SQL 小提琴

小提琴的代码

create table x ( y varchar(20))
insert into x values ('        ')
select 'TRUE' from x where y = ''
于 2012-04-13T15:36:30.343 回答
1

在 SQL Server 中,字符串比较会忽略前导空格和尾随空格。

这意味着您只需与空字符串进行比较即可获得所需的结果:

WHERE SomeVarchar = ''

即使 SomeVarChar 是一系列 20 个空格,这也将评估为 true:

SELECT 'True'
WHERE '                     ' = ''
于 2012-04-13T15:38:21.987 回答