以0.25和0.75为界,
比如原值1.249999,更新为1.0
原值1.3和1.7更新为1.5。

解决方案 »

  1.   

    trunc(1.24999 + 0.5)
    加一个0.5 就可以了!
      

  2.   

    是要把一列elevation中的值不是0.5的倍数的行更新为最靠近的0.5的倍数。
      

  3.   

    这样的效果?e.g.
    ;WITH CTET(Num)
    AS
    (
    SELECT CAST(1.249999 AS float)
    UNION ALL
    SELECT 1.3
    UNION ALL 
    SELECT 1.69
    UNION ALL 
    SELECT 1.7
    UNION ALL 
    SELECT 1.75
    UNION ALL 
    SELECT 1.9
    )
    SELECT *,CEILING(FLOOR(Num*4)/2)/2 AS Num2 FROM CTET
    /*
    Num Num2
    1.249999 1
    1.3 1.5
    1.69 1.5
    1.7 1.5
    1.75 2
    1.9 2
    */