DB2中如果转换数值显示为两位小数,并显示千分位逗号要怎么写SQL?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DB2中如果转换数值显示为两位小数,并显示千分位逗号要怎么写SQL?相关的知识,希望对你有一定的参考价值。
DB2中如果转换数值显示为两位小数,并显示千分位逗号要怎么写SQL?
SQLServer可以写:select convert(nchar(18), case(xxx as money),1) from table1 -> 显示为1,750,000.00
DB2中要怎么写呢?
VARCHAR_FORMAT_BIT(cast(x'5493522.56'
as varchar(10) for bit data),
'x,xxx,xxx.xx') 参考技术B db2中没有符合要求的函数,而且从数据库的角度也不是必须,这个可以在外围代码中做追问
谢谢你的回答,但是难道DB2 不像Oracle或者SQLSERVER一样有任何的格式化函数来做这件事么?比如像Oracle 可以用To_CHAR()来格式化。DB2没有么?
追答没有呀
参考技术C to_char(1000000,'999,999,999,999.99')数字的处理方法(保留小数点两位将数字转化为千分位格式)
1:介绍几种对数字的处理技巧,废话不说,直接上代码:
//保留两位小数 //将1234567转换为1234567.00 function to2bits(flt) { if (parseFloat(flt) == flt) { return Math.round(flt * 100) / 100; // 到2位小数 } else return 0; } //转换为千分位格式 //将1234567.00转换为1,234,567.00 function numToMoneyField(inputString) { regExpInfo = /(\d{1,3})(?=(\d{3})+(?:$|\.))/g; var ret = inputString.toString().replace(regExpInfo, "$1,"); return ret; } //保留一位(两位及多位小数,并且不进行四舍五入) function toBits(a,b){ var res= parseInt((a/b)*10)/10;//保留两位、三位小数 同理 return res; } console.log(avg(2,3));//输出结果为0.6 //保留一位(两位及多位小数,并且不进行四舍五入) function toBits(a,b){ //现将该除法结果保留到小数点后两位,并且不进行四舍五入,然后进行保留一位数字(根据小数点第二位进行四舍五入) var res= parseInt((a/b)*100)/100;//0.66保留两位、三位小数 同理 return res; } console.log(toBits(2,3).toFixed(1));//输出结果为0.7
以上是关于DB2中如果转换数值显示为两位小数,并显示千分位逗号要怎么写SQL?的主要内容,如果未能解决你的问题,请参考以下文章