2

私が走るとき

SELECT SUM(CASE column1 WHEN 'sometext' THEN 1 ELSE 0 END)
FROM table1

次のエラーが表示されます。

データ型 text と varchar は、equal to 演算子では互換性がありません。

列はデータ型textなので、次を試しましたが、同じエラーが発生しました。何か案は?

SELECT SUM(CASE column1 WHEN CAST('sometext' AS VARCHAR (40)) THEN 1 ELSE 0 END)
FROM table1
4

2 に答える 2

0

これは機能します:

select sum(case when cast(column1 as varchar(max)) = 'sometext' then 1 else 0 end)
from table1

sql fiddle demo

于 2013-09-14T20:06:44.637 に答える