我有一个SQL SUM,我也在划分,但我想将精度设置在第十位,例如10.1而不是10.12。你会怎么做呢?这是我的SQL语句:
SELECT DISTINCT PAINT_LINE, SUM(HOURS_REQUIRED/WORKING_DAYS) AS HOURS_REQUIRED,
TO_CHAR(WEEK_START, 'YYYY/MM/DD') AS WEEK_START FROM
DCSI.PAINTYEARLYPAINTHRSPROJECTIONS WHERE USER_ID = :UserID AND WEEK_START>=SYSDATE-7
AND WEEK_START<=SYSDATE+63 GROUP BY WEEK_START, PAINT_LINE ORDER BY WEEK_START DESC, PAINT_LINE
我想将HOURS_REQUIRED设置为第十精度,但我不知道如何解决这个问题。
谢谢!
答案 0 :(得分:2)
尝试:
ROUND(SUM(HOURS_REQUIRED / WORKING_DAYS),1)AS HOURS_REQUIRED
请参阅:
答案 1 :(得分:2)
执行此操作的最佳方法是将其转换为具有正确精度的数字:
cast(<val> as numeric(8,1))
例如。
在你的情况下,这将是:
cast(SUM(HOURS_REQUIRED/WORKING_DAYS) as numeric(8, 1)) AS HOURS_REQUIRED