怎样用SQL语句进行四舍五入?

时间:2021-11-22 10:35:50
列一
20.206
13.596
82.120
22.999
要进行四舍五入,保留小数点后两位,即:
列一
20.21
13.60
82.12
23.00
请各位大哥帮帮忙啊~~~~

8 个解决方案

#1


--处理示例:

select 结果=cast(round(列一,2) as decimal(10,2))
from(
select 列一=20.206
union all select 13.596
union all select 82.120
union all select 22.999
)a

/*--处理结果
结果           
------------ 
20.21
13.60
82.12
23.00

(所影响的行数为 4 行)
--*/

#2


--处理示例2:

select 结果=cast(列一 as decimal(10,2))
from(
select 列一=20.206
union all select 13.596
union all select 82.120
union all select 22.999
)a

/*--处理结果
结果           
------------ 
20.21
13.60
82.12
23.00

(所影响的行数为 4 行)
--*/

#3


very good!
I am looking for it!

#4


用round函数

ROUND
返回数字表达式并四舍五入为指定的长度或精度。

语法
ROUND ( numeric_expression , length [ , function ] ) 



下例显示两个表达式,说明使用 ROUND 函数且最后一个数字始终是估计值。

SELECT ROUND(123.9994, 3), ROUND(123.9995, 3) 
GO

下面是结果集:

----------- -----------
123.9990    124.0000 

#5


MARK

#6


真是好呀

#7


good,thanks

#8


select convert(decimal(10,2),列一) as 列一
from(
select 20.206 as 列一
union all select 13.596
union all select 82.120
union all select 22.999
) A

#1


--处理示例:

select 结果=cast(round(列一,2) as decimal(10,2))
from(
select 列一=20.206
union all select 13.596
union all select 82.120
union all select 22.999
)a

/*--处理结果
结果           
------------ 
20.21
13.60
82.12
23.00

(所影响的行数为 4 行)
--*/

#2


--处理示例2:

select 结果=cast(列一 as decimal(10,2))
from(
select 列一=20.206
union all select 13.596
union all select 82.120
union all select 22.999
)a

/*--处理结果
结果           
------------ 
20.21
13.60
82.12
23.00

(所影响的行数为 4 行)
--*/

#3


very good!
I am looking for it!

#4


用round函数

ROUND
返回数字表达式并四舍五入为指定的长度或精度。

语法
ROUND ( numeric_expression , length [ , function ] ) 



下例显示两个表达式,说明使用 ROUND 函数且最后一个数字始终是估计值。

SELECT ROUND(123.9994, 3), ROUND(123.9995, 3) 
GO

下面是结果集:

----------- -----------
123.9990    124.0000 

#5


MARK

#6


真是好呀

#7


good,thanks

#8


select convert(decimal(10,2),列一) as 列一
from(
select 20.206 as 列一
union all select 13.596
union all select 82.120
union all select 22.999
) A