實現(xiàn)方法:1、利用select語句查詢指定表中的數(shù)據(jù);2、利用“GROUP BY”關(guān)鍵字根據(jù)一個或多個字段對查詢結(jié)果進行分組;3、利用SUM()函數(shù)根據(jù)分組情況分別返回不同組中指定字段的總和,語法為“SELECT SUM(進行求和的字段名) FROM 表名 GROUP BY 需要進行分組的字段名;”。
本教程操作環(huán)境:windows7系統(tǒng)、mysql8版本、Dell G3電腦。
在mysql中,可以利用SELECT語句、“GROUP BY”關(guān)鍵字和SUM()函數(shù)來實現(xiàn)分組求和。
-
SELECT語句可以查詢指定表中的數(shù)據(jù)
-
“GROUP BY”關(guān)鍵字可以根據(jù)一個或多個字段對查詢結(jié)果進行分組
-
SUM()函數(shù)根據(jù)分組情況分別返回不同組中指定字段的總和
SELECT?SUM(進行求和的字段名)?FROM?表名?GROUP?BY?需要進行分組的字段名;
示例:
對數(shù)據(jù)表mip_demo的?sex 字段進行分組查詢,然后分組求出score字段中男生和女生的成績總和。
我們先來看看mip_demo表的數(shù)據(jù):
SELECT?*?FROM?mip_demo;
分組求男生和女生的成績總和。
SELECT?sex,SUM(score)?FROM?mip_demo?GROUP?BY?sex;
可以看出,對mip_demo表的性別進行分組,并分別求出各組成績總和。
擴展知識:
-
GROUP BY關(guān)鍵字用于分組查詢
GROUP BY?語句將具有相同值的行分組為匯總行,例如”查找每個地區(qū)的客戶數(shù)量”。
GROUP BY?語句通常與聚合函數(shù)(count()、MAX(),?MIN(),?SUM(),?AVG()) 按一列或多列對結(jié)果集進行分組。
-
SUM()函數(shù)
SUM()函數(shù)用于計算一組值或表達式的總和,SUM()函數(shù)的語法如下:
SUM(DISTINCT?expression)
SUM()函數(shù)是如何工作的?
-
如果在沒有返回匹配行SELECT語句中使用SUM函數(shù),則SUM函數(shù)返回NULL,而不是0。
-
DISTINCT運算符允許計算集合中的不同值。
-
SUM函數(shù)忽略計算中的NULL值。
【相關(guān)推薦:mysql視頻教程】