在我的T-SQL select查询中,对于每条记录,我想返回字段值(数字),除非它是0(零),我想返回文本'N/A ”。什么是最简单的方法来完成这个?我曾尝试使用CAST和CONVERT的CASE语句,但无法获得我需要的结果。文本代替零结果
Q
文本代替零结果
1
A
回答
0
DECLARE @Field NUMERIC
SET @Field = 0
SELECT CASE WHEN cast(@Field as nvarchar(50)) = '0' then 'N/A' ELSE cast(@Field as nvarchar(50)) END
+0
谢谢你的建议。我发现你的例子最简单的应用。 – twinspar
0
你需要从你的CASE语句在这种情况下,它正试图到脚趾“N/A”文本值转换为数值型否则返回相同的数据类型。根据需要使用以下,调整为您的数据类型:
SELECT CASE [MyFieldName] WHEN 0 THEN 'N/A'
ELSE CAST([MyFieldName] AS VARCHAR(50))
END
...
+0
......你的意思是...... ......其他人......“对吧? – Chains
+0
是的,你是正确的,否则ELSE CASE是一个错字。你应该注意到它应该是ELSE CAST。 –
0
如果该字段不可为空:
COALESCE(NULLIF(fieldname,0),'N/A')
否则:
CASE CONVERT(VARCHAR,fieldname) WHEN '0' THEN 'N/A' ELSE CONVERT(VARCHAR,fieldname) END
相关问题
- 1. 替代零大小结构
- 2. 替代结果
- 3. SOQL:避免用NULL结果计数返回0(零)代替
- 4. 用AJAX结果代替文档
- 5. 替代MySQL的结果
- 6. GROUP_CONCAT或替代结果
- 7. 文本宏 - 与函数结果代替他们
- 8. 零结果
- 9. FFTW结果为零
- 10. 使用SED或AWK替换文本零
- 11. Bash:用零代替“nothing”
- 12. 用零numpy替代除数
- 13. 用零代替负数?
- 14. 显示结果为零textScore猫鼬$文本搜索
- 15. PHP - 替代Base64的更短的结果?
- 16. @NamedQuery可缓存结果替代
- 17. 谷歌在iframe替代搜索结果
- 18. OpenXML用结果值替换域代码
- 19. CakePHP解析查询结果替代
- 20. `eval`除零的结果为零
- 21. PHP文本替换? (结局)
- 22. 当查询结果返回不匹配时,需要显示替代文本
- 23. C数学和零结果
- 24. numpy除以零结果
- 25. BSA计算结果我零
- 26. openmp循环结果为零
- 27. 得到零结果(android)
- 28. SQL - 显示零结果
- 29. YouTube API返回零结果
- 30. Scrapy返回零结果
什么你使用铸铁时收到错误消息/在一个案件转换? – GPH