我想将DB2 SQL中的双精度值列用逗号分隔符,“”转换为点分隔符.“”。我的本地设置是德语。我不能更改DB设置,因为涉及到许多应用程序。
例如:列值= 0,81234我希望它显示为0.81234。
SELECT CAST(CAST(COLUMNNAME AS DECIMAL(8,2)) AS VARCHAR(25))
我试着先把它转换成decimal(8,2),然后再转换成varchar。结果是0.81(如预期的那样带有."“)。但是我需要小数点右边的所有数字,比如0.81234。所以,我试着用decimal(7,6),结果是SQL0413N OVERFLOW OCCURRED DURING NUMBER DATA TYPE CONVERSION error.
是否有其他方法将小数点分隔符显示为.“”?
2条答案
按热度按时间mspsb9vt1#
对于数值列,分隔符实际上未存储在DB中。
配置您用来查看数据的任何工具,以使用您选择的分隔符。
或者,您可以运行
set option decmpt = *PERIOD;
然后再运行选择。
bbuxkriu2#
如果你使用JDBC,你可以通过调整你的连接字符串来修改它。
表示点作为小数点分隔符,或2表示逗号作为小数点分隔符