小编典典

比较NTEXT列和常量值的正确方法是什么?

sql

如果我使用类似的东西

[ntext2] <> '1,032.5',

我收到此错误:

数据类型ntext和varchar在不等于运算符中不兼容。

最好的解决方案是对任何列类型以相同的方式实现比较。(<>运算符适用于NVARCHAR和INT)。


阅读 153

收藏
2021-03-17

共1个答案

小编典典

ntext不推荐使用该数据类型,而推荐使用该nvarchar(max)数据类型。如果您可以更改表中的数据类型,那将是最佳解决方案。这样,将其与varchar文字进行比较就没有问题了。

否则,在比较之前必须转换值:

cast([ntext2] as nvarchar(max)) <> '1,032.5'

您可能还考虑使用nvarchar文字,它可以解决一些类似的数据类型问题:

cast([ntext2] as nvarchar(max)) <> N'1,032.5'
2021-03-17