空白字符串与 SQL 中的空字符串相同吗?

sky*_*e01 1 sql-server string

我正在使用 SQL Server 2008。以前,我认为空字符串(即“”)与仅包含空白字符的字符串(例如“”)不同。另外,我认为不同长度的空白字符串彼此不同(例如,“ ”与“ ”)。然而,SQL 似乎对所有这些都一视同仁。也就是说,空字符串与任意长度的空白字符串相同。这是预期的吗?

Dam*_*ver 5

它不是传统意义上影响间距的任何不可见字符(例如制表符、换行符等)中的空白 - 它只是文字空格字符 (ASCII 32)

这是标准 SQL - 如果两个字符串长度不等,则在比较发生之前,较短的字符串会用空格填充。