在SQL Server 2008中,我有一个名为Zone的表,其中有一列ZoneReference varchar(50) not null作为主键。

如果我运行以下查询:

select '"' + ZoneReference + '"' as QuotedZoneReference
from Zone
where ZoneReference = 'WF11XU'

我得到以下结果:
"WF11XU "

注意尾随空格。

这怎么可能?如果在该行上确实存在尾随空格,那么我希望返回为零,为零的结果,因此我假设SQL Server Management Studio正在奇怪地显示其他情况。

在C#代码中,调用zoneReference.Trim()会将其删除,表明它是某种空白字符。

有人可以帮忙吗?

最佳答案

这是预期的结果:在SQL Server中,=运算符在进行比较时会忽略尾随空格。

Source

08-05 16:26