sql查询在列数据类型为int时默认选择字符

时间:2016-11-09 11:23:19

标签: sql-server tsql sql-server-2012

select B_id,amount,amount_paid,case when gr!=0 then gr else '-' end as goods_returned from tbl_addbill;

我甚至不知道是否可能,列(gr)的数据类型是int,我想在gr!= 0时选择( - ),但是我的查询下面工作正常,可以有人请告诉我怎么做这个

select B_id,amount,amount_paid,case when gr!=0 then gr else 1 end as goods_returned from tbl_addbill;

1 个答案:

答案 0 :(得分:1)

您可以在gr时将gr!=0转换为字符串,例如case when gr!=0 then CONCAT(gr,'') else '-' end ...(是的,我正在使用空字符串连接;这会将gr转换为字符串)。