需要始终在SQL中进行舍入

时间:2018-04-30 09:34:48

标签: sql rounding

小数值需要向上舍入到最接近的整数,如果小数部分大于或小于0.5,则无关紧要。

这是我的问题:

SELECT  MONTH_ 
        , COST 
        , DISC_COST / COST AS 'amount' 
        , DISC_COST 
        , PROFIT  
FROM    arr 
WHERE   MONTH_ LIKE 'JANU%'

结果如下:

MONTH_  COST    amount      DISC_COST   PROFIT
January 200     1              200       70
January 3500    2,414285714    8450     7250
January 4500    1              4500     2900
January 28500   0,631578947    18000    11200
January 600     1              600      100

2 个答案:

答案 0 :(得分:1)

使用CEIL()功能(MySQL / Postgres) 使用CEILING()函数(MS SQL)。

SELECT 
    MONTH_ , 
    COST , 
    CEIL((DISC_COST / COST)) AS 'amount' , 
    DISC_COST , PROFIT  
FROM 
    arr 
WHERE 
    MONTH_ LIKE 'JANU%'

答案 1 :(得分:-1)

您可以使用trunc()通过切除小数值来使其成为整数值。

SELECT MONTH_ , COST , TRUNC(DISC_COST / COST) AS 'amount' , DISC_COST , PROFIT  FROM arr WHERE MONTH_ LIKE 'JANU%'