我有一个查询职责和增值税信息的查询,并根据返回的值进行计算。
告诉我税率在表格中的列格式为,例如3.7%或8%在两个基数中我需要从我的返回值中删除%。否则我的SUM clasue失败了。
我已经为下面的3.7%示例排序了问题:
CASE WHEN CustomsTariff.CommodityCode.StandardDuty = 'Free' THEN '0.0' ELSE SUBSTRING(CustomsTariff.CommodityCode.StandardDuty, 1, 3) END AS DutyRate,
这会丢弃任何有十进制位置的返回的%,但是我需要添加CASE来说明StandardDuty值是否没有小数点也会删除%字符而不会弄乱第一个看起来是第一个的语句3位数。
感谢。
答案 0 :(得分:1)
您是否在replace()
字符上试用了%
? Replace
CASE WHEN CustomsTariff.CommodityCode.StandardDuty = 'Free'
THEN '0.0' ELSE REPLACE(CustomsTariff.CommodityCode.StandardDuty, N'%', N'')
END AS DutyRate,