0

クエリ時に次のSQLケースを使用するときに、このエラーを取り除く方法はありますか?一部のフィールドはインポートされた方法のためにvarcharであるため、

select * ,
case when [Month] = '200911' then netpay_nov09
 when [Month] = '200912' then netpay_dec09
 when [Month] = '201001' then netpay_jan10
end as m1
4

1 に答える 1

0

これらのvarchar列にはREAL値が含まれている可能性があるため、次のように、明示的にREALに変換し、丸めます。

select * ,
    case 
         when [Month] = '200911' then ROUND(CONVERT(REAL, netpay_nov09), 0)
         when [Month] = '200912' then ROUND(CONVERT(REAL, netpay_dec09), 0)
         when [Month] = '201001' then ROUND(CONVERT(REAL, netpay_jan10), 0)
    end as m1
....
于 2012-10-23T09:27:46.017 に答える