我在SQL Server 2008中工作。以前,我认为空字符串(即'')与只有空格字符的字符串不同(例如,'') 。另外,我认为不同长度的空白字符串彼此不同(例如,'''')。但是,似乎SQL对待所有这些都是一样的。也就是说,空字符串与任何长度的空白字符串相同。这是预期的吗?
答案 0 :(得分:4)
传统意义上的任何影响间距的不可见字符(例如制表符,换行符等)都不是空格 - 它只是字面空格字符(ASCII 32)
它是标准的SQL - 如果两个字符串长度不等,则在进行比较之前用较小的字符串填充空格。