一尘不染

在SQL Server 2005中,是否有任何方法可以区分文本或按文本(或ntext)分组?

sql

在一个表中,我有一个称为MEMO_TEXT的列,它是文本数据类型。当我尝试创建视图并使用GROUP BY时,出现以下错误:

SQL Server数据库错误:除非使用IS NULL或LIKE运算符,否则无法对text,ntext和image数据类型进行比较或排序。

当我尝试对查询执行DISTINCT时,也会收到此错误。关于如何解决这个问题的任何想法?

如果您需要更多信息,请告诉我。


阅读 120

收藏
2021-05-05

共1个答案

一尘不染

围绕它的一种破解方法是将其转换为nvarchar(max)

这是一种记录的方法,可以将字符串长度增加到4,000以上:

nvarchar [ ( n | max ) ]

可变长度的Unicode字符串数据。n定义字符串长度,可以是1到4,000之间的值。 max表示最大存储大小为2 ^ 31-1字节(2 GB)。
存储大小(以字节为单位)是输入的数据实际长度的两倍+ 2个字节。nvarchar的ISO同义词是不同国家的字符和不同国家的字符。

类似的技巧也适用于varchar()

2021-05-05