我想在mysql中執行一個組總結,但空值導致問題。我用NULLIF/IFNULL沒有幫助MYSQL組總和時有空值
下面是一個例子
Group Employee Discipline HardWork Dedication
101 DTF 1 1 1
101 Tim 1 1 0
101 Erk NULL 1 0
101 PMD NULL 1 0
101 NSE 1 1 0
SQL:
SELECT
GROUP,
SUM(EMPLOYEE),
SUM(DISCIPLINE),
SUM(HARDWORK),
SUM(DEDICATION)
FROM
TABLE
GROUP BY
GROUP,
EMPLOYEE,
DISCIPLINE,
HARDWORK,
DEDICATION
預期結果:
101---3----5----1
實際結果
101--5----5-----1
任何人有什麼想法?
你的查詢是沒有意義的,你不能'SUM'一個文本列的值,而'SUM'你正在執行'GROUP BY'的相同列只會導致每個聚合的1個值。你可能是指'COUNT'而不是? – Dai
對於SUM()聚合,NULL值不是問題。查詢返回SELECT列表中的五個表達式,報告爲「實際結果」僅顯示四列。給定示例數據和查詢,由於GROUP BY子句中的表達式,我們希望查詢返回* 5行,而不是單行。你正在吠叫關於「NULL」值的錯誤樹「導致問題」。 – spencer7593