sql2005中round函数的使用
1.altertablepersonaddnumer2float2.insertintoperson(numer2)select23.33unionallselect42...
1. alter table person add numer2 float
2. insert into person(numer2) select
23.33 union all select
42.00 union all select
12 union all select
1 union all select
-26 union all select
-36.365 union all select
36.369
3.selcct round(numer2,2) from person运行提示'numer2' 附近有语法错误。为什么?
还有就是如果在第一步中实数的数据类型用double、numeric、decimal的话,double报错,numeric和decimal插入的数据小数点后的要嘛都是零,要嘛数据显示的是整数,这是为什么? 展开
2. insert into person(numer2) select
23.33 union all select
42.00 union all select
12 union all select
1 union all select
-26 union all select
-36.365 union all select
36.369
3.selcct round(numer2,2) from person运行提示'numer2' 附近有语法错误。为什么?
还有就是如果在第一步中实数的数据类型用double、numeric、decimal的话,double报错,numeric和decimal插入的数据小数点后的要嘛都是零,要嘛数据显示的是整数,这是为什么? 展开
2个回答
展开全部
SELECT 123.12567, ROUND([numer2], 1), ROUND(123.12567, 3, 0), ROUND(123.12567, -2)
from person
看上面的例子
第一个参数是结果保留的小数位数,可以是负数,负数的时候就是保留小数点前几位了
第二个参数一般不使用,默认是0,自动进行四舍五入,如果不是0的话,就不四舍五入了,而是直接把需要保留的小数位数后面的数据“砍断”
你自己可以去数据库运行一下对自己更有帮助!!
from person
看上面的例子
第一个参数是结果保留的小数位数,可以是负数,负数的时候就是保留小数点前几位了
第二个参数一般不使用,默认是0,自动进行四舍五入,如果不是0的话,就不四舍五入了,而是直接把需要保留的小数位数后面的数据“砍断”
你自己可以去数据库运行一下对自己更有帮助!!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询