關於case when then 字符串轉換失敗問題

 原句大概是這樣

c.refund_fee=case when d.refund_status='SUCCESS' then d.divide_order_fee else 0 end

我的c.refund_fee 和  d.divide_order_fee 都是統一類型varchar(200) 但是依然報錯 說 192.34轉不成int 類型  後來找到原因  問題出在0上  他需要then 後面的類型要一致  否則 系統就會給你轉換

最後修改爲:

c.refund_fee=case when d.refund_status='SUCCESS' then d.divide_order_fee else '0' end//0加引號轉成字符串

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章