我有一个存储过程,它使用一系列临时表来提取数据、格式化然后插入到新表中。我知道这没有意义,但我正在尝试将 null 格式化为“”(空白)或“-”破折号。这是公元前。零值实际上代表了实际余额。当我这样做时,我不断收到将 varchar 转换为数字的错误。
CASE
WHEN ##TEMPTABLE.[Summary Category Definition] = 'In Storage' THEN ''
WHEN ##TEMPTABLE.[L/C Amount] > 0 THEN ##TEMPTABLE.[L/C Amount]
ELSE ''
END AS [L/C Amount]
我努力了:
CASE
WHEN ##TEMPTABLE.[Summary Category Definition] = 'In Storage' THEN ''
WHEN ##TEMPTABLE.[L/C Amount] > 0 THEN convert(varchar(20), ##TEMPTABLE.[L/C Amount] )
ELSE ''
END AS [L/C Amount]
这甚至可能吗?感谢您的任何帮助。