首页 > 解决方案 > SQL:有 MAX <> SUM

问题描述

这实际上是一个非常简单的查询,但我不知道为什么它向我显示 HAVING 实际排除的值。

输入错误


表 1 -> 维护表

表 2 -> 子表(Maintable 多于 1 个条目)

SELECT  
            a.ID, 
            b.MainTable_ID,
            MAX(a.ExpenditureComplete) as ExpenditureHours, 
            SUM(b.DurationHour) as DurationHours

    FROM [Table_1] as a
            Inner join
                [Table_2] as b
                    On
                        a.ID = b.MainTable_ID 

    Where a.Inactive = 0 
          and b.Inactive = 0

    Group by
                a.ID, 
                b.MainTable_ID

    Having MAX(a.ExpenditureComplete) <> SUM(b.DurationHour)

标签: sqlsummaxhavinghaving-clause

解决方案


尝试这个:

Having ROUND(MAX(a.ExpenditureComplete),2) <> ROUND(SUM(b.DurationHour),2)

推荐阅读