Postgresql &引用;“圆形”;研究生为2530.30至2599人

Postgresql &引用;“圆形”;研究生为2530.30至2599人,postgresql,math,rounding,Postgresql,Math,Rounding,我需要用PostgreSQL中的2599替换像2530.30这样的数字 我尝试使用四舍五入(2530.30)+0.99,但它只将小数点后的数字更改为99。因此它产生了2530.99,这是我不想要的 我想删除小数位数,并用99替换最后两个小数位数。我知道我可以只使用一个整数,但我在学校的作业说我需要这样做 不应该有负数,任务说我应该有一个售价为3500.50美元的产品,然后我需要将这个数字从3500.50改为3599。不3500.99除以100,截断,再乘以100: SELECT trunc(25

我需要用PostgreSQL中的
2599
替换像
2530.30
这样的数字

我尝试使用
四舍五入(2530.30)+0.99
,但它只将小数点后的数字更改为
99
。因此它产生了
2530.99
,这是我不想要的

我想删除小数位数,并用99替换最后两个小数位数。我知道我可以只使用一个
整数
,但我在学校的作业说我需要这样做


不应该有负数,任务说我应该有一个售价为3500.50美元的产品,然后我需要将这个数字从
3500.50
改为
3599
。不
3500.99

除以100,截断,再乘以100:

SELECT trunc(2530.30 / 100) * 100 + 99;
这会将范围
[2500,2600)
中的所有数字替换为
2599

或者,更一般地说,它将最后两个十进制数字替换为
99
,并丢弃小数位数(这也将
0
12.50
转换为
99

正如你所说,负数不会出现,所以被忽略