我正在运行以下查询并获取操作数数据类型varchar对sum运算符错误无效。 accountnature字段是一个varchar字段,但是我将其转换为INT并且我仍然收到错误。
SELECT
'Qualified' =sum(case when (cast(AccountNature AS Int)) in ('a','b') then '1' end)
from agreement
group by accountnature
对我做错了什么或如何解决的任何想法? 感谢。
答案 0 :(得分:6)
试试这个:
SELECT
'Qualified' = sum(case when AccountNature in ('a','b') then 1 ELSE 0 end)
from agreement
group by accountnature
答案 1 :(得分:1)
试试这个:
select [qualified] = sum(case when AccountNature in ('a','b') then 1 else 0 end)
from agreement
您不需要将其强制转换为整数,因为您要与字符进行比较。