7

我想看看该字段MSGTEXT在表中重复了多少次MMOUTBOUND。为此,我使用以下查询:

SELECT 
    MSGTEXT, 
    COUNT(*) TotalCount 
FROM MMOUTBOUND 
GROUP BY MSGTEXT 
HAVING COUNT(*)>1;

但我收到一个错误,因为无法比较或排序 ntext 数据类型。如何为 ntext 数据类型实现这一点?

4

1 回答 1

14

您不能直接针对整个列。但是,间接地,您可以转换前 N 个字符并按此分组,例如

SELECT CONVERT(NVARCHAR(100), MSGTEXT), COUNT(*) TotalCount 
FROM MMOUTBOUND 
GROUP BY CONVERT(NVARCHAR(100), MSGTEXT) 
HAVING COUNT(*)>1;

正如其他人所指出的,请注意您应该将NTEXT列转换为NVARCHAR(MAX)

于 2013-12-18T14:42:30.330 回答