0

私の SQL では、SQLServer 2008R2 の 2 つのテーブル間でデータを比較して、不一致が存在する行を返し ( を使用EXCEPT)、他の場合に一致する行を返す必要があります ( INTERSECT)。問題は、一部の列にNTEXTデータ型 (SQLServer) があり、そのような列を持つテーブルNTEXTが存在する場合、SQLServer がエラーを返すことです。

例:

SELECT * FROM table_pre
EXCEPT
SELECT * FROM table_post

上記の操作でエラーが発生します -

'The ntext data type cannot be selected as DISTINCT because it is not comparable.'

テーブル ( table_pre、 ) には、比較が失敗する原因となるtable_postdatatype = の列が少なくとも 1 つあります。NTEXT

質問 - 1.NTEXT列名を明示的にリストして問題の列を除外することなく、これらの列を上記の比較から除外する方法はありますか? 関連する列が多数あり、明示的にリストするのは簡単ではありません。NTEXT2.列だけを明示的にキャスト/変換VARCHARして、残りの列をリストする必要はありませんか? 3. または、一般的に、そのような比較中に特定の列を一覧表示することで、何らかの方法でそれらを除外できますか?

どんな提案でも、本当に感謝しています! ありがとう。

4

1 に答える 1