谁能告诉我,
如何在 SQL Server 2008 R2 中7.3050
进行ROUND?7.3000
我努力了 :
Select ROUND(7.3050,2)
结果 :7.31
但我需要结果:7.30
谁能告诉我,
如何在 SQL Server 2008 R2 中7.3050
进行ROUND?7.3000
我努力了 :
Select ROUND(7.3050,2)
结果 :7.31
但我需要结果:7.30
你可以FLOOR
这样使用函数:
FLOOR(7.30502 * 100) / 100
如果可以更改零的数量以将其四舍五入到所需的位数。
你得到什么取决于你如何开始。数据类型很重要。
create table test (
n decimal(10, 4) not null,
r float not null
);
insert into test values (7.3050, 7.3050);
select round(n, 2) as n_rounded,
round(r, 2) as r_rounded
from test;
N_ROUNDED R_ROUNDED
--
7.31 7.3
你所说的圆形也很重要。当您谈论将 7.3050“四舍五入”到 7.30(假设为十进制数据类型)时,您可能并不是真的在谈论四舍五入。(我们无法确定。)您可能想要截断到小数点后一位——您想要将 7.300 到 7.309 之间的所有值映射到 7.3。
insert into test values (7.3000, 7.3000);
insert into test values (7.3090, 7.3090);
select round(n, 2, 1) as n_trunc,
round(r, 2, 1) as r_trunc
from test;
N_TRUNC R_TRUNC
--
7.3 7.3
7.3 7.29
7.3 7.3
请注意浮动列的行为。
您可以使用此查询:
Select ROUND(7.3050,1)
结果是 7.3000