SQL中的数字格式化
来源:互联网 发布:linux shell删除文件 编辑:程序博客网 时间:2024/06/10 22:17
用sql语句来格式化double型的数据,比如,只取出小数点后面的两位
一。主要方法
--取小数位前数字,不考虑四舍五入
select left('30000.72234', charindex('.', '30000.72234')-1)
其中:charindex('.', '30000.72234')获得小数点的位置;-1则表示在小数点前面的全部,如果想获取小数点后面的n为,写成+n就可以了。还挺好用的。
--每三位用逗号相隔,留2位小数,不考虑四舍五入
select convert(varchar, cast(round(30000.72234,0) as money), 1)
--每三位用逗号相隔,不留小数位,考虑四舍五入
select left(convert(varchar, cast(round(30000.72234,0) as money), 1) , charindex('.', convert(varchar, cast(round(30000.72234,0) as money), 1))-1)
二。CAST和 ROUND的比较
1.
SELECT CAST('123.456' as decimal) 将会得到 123(小数点后面的将会被省略掉)。
如果希望得到小数点后面的两位。
则需要把上面的改为
SELECT CAST('123.456' as decimal(38, 2))
===>123.46
自动四舍五入了!
2.
SELECT ROUND(123.75633, 2, 1),
ROUND(123.75633, 2)
上面的SQL得到的2个值是不一样的,前一个是:123.75000,后一个是:123.76000。
因为前者在进行四舍五入之前,小数点后已经被截取,保留了2位。
而后者则没有被截取,四舍五入时自然就会得到123.76000
转自:http://www.cnblogs.com/dami/archive/2007/08/09/849567.html
- SQL中的数字格式化
- SQL中的数字格式化
- SQL中的数字格式化
- SQL中的数字格式化
- SQL中的数字格式化
- SQL中的数字格式化
- java中的数字格式化
- java中的数字格式化
- SQL中数字的格式化
- .NET 中的数字格式化,日期格式化
- .NET 中的数字格式化,日期格式化
- .NET 中的数字格式化,日期格式化
- .NET 中的数字格式化,日期格式化
- C#中的数字格式化 格式日期格式化
- C#中的数字格式化、格式日期格式化
- sql语句格式化数字(前面补0)
- sql format 格式化数字(前面补0)
- C#.NET中的ToString()数字格式化
- 如何用delphi开发斗地主记牌器
- 摩斯码装换程序
- 创建和使用动态链接库 (C++)C#调用
- use a Content action handlers to add comment for node
- JS 实现中文的URI编码,URI编码转换成中文
- SQL中的数字格式化
- android 联系人获取号码类型
- Hibernate中get和load方法的区别以及close(),clear()、evict()等的区别
- Silverlight与JavaScript相互调用
- java的数组问题
- PHP类中声明数组类型属性出现的问题
- 超过设定的宽度,自动以省略号“。。。”表示
- 1yue13ri
- C# C#实现控制台退出控制