【问题标题】:Round ALL Results in SQL Table在 SQL 表中舍入所有结果
【发布时间】:2019-04-08 01:00:11
【问题描述】:

我编写了脚本并能够得到我的结果,但需要帮助将总和(分配小时数)表中的所有结果四舍五入到小数点后 1 位,总和(分配费用)表中的小数点后 2 位。我在这里看到的所有圆形功能都不起作用。

这是我使用并生成结果的代码:

SELECT  ASSIGNMENT.EMP_NUM, EMPLOYEE.EMP_LNAME, Sum(ASSIGNMENT.ASSIGN_HOURS) AS SumOfASSIGN_HOURS, Sum(ASSIGNMENT.ASSIGN_CHARGE) AS SumOfASSIGN_CHARGE
FROM    EMPLOYEE, ASSIGNMENT
WHERE   EMPLOYEE.EMP_NUM = ASSIGNMENT.EMP_NUM
GROUP BY    ASSIGNMENT.EMP_NUM, EMPLOYEE.EMP_LNAME

谢谢! 雷米

【问题讨论】:

  • 您能提供一些示例数据并期待结果吗?
  • 请检查您的数据,您可能有一些员工的 ASSIGN_HOURS 和 ASSIGN_CHARGE 值为 null。
  • 请参阅:How to accept an answer for closure。谢谢:)

标签: mysql rounding


【解决方案1】:

您可能正在寻找Format() 函数。它将格式化结果总和数字,预期没有小数位。所以,即使FORMAT(3.5,2) 也会返回3.50

SELECT  ASSIGNMENT.EMP_NUM, 
        EMPLOYEE.EMP_LNAME, 
        FORMAT(Sum(ASSIGNMENT.ASSIGN_HOURS),1) AS SumOfASSIGN_HOURS,
        FORMAT(Sum(ASSIGNMENT.ASSIGN_CHARGE),2) AS SumOfASSIGN_CHARGE
FROM    EMPLOYEE, ASSIGNMENT
WHERE   EMPLOYEE.EMP_NUM = ASSIGNMENT.EMP_NUM
GROUP BY ASSIGNMENT.EMP_NUM, EMPLOYEE.EMP_LNAME

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多