MySQL GROUP關(guān)鍵字是SQL用于分組數(shù)據(jù)的語(yǔ)句,基于指定的字段將數(shù)據(jù)分組,然后使用聚合函數(shù)(如SUM,COUNT,AVG等)來處理數(shù)據(jù),返回結(jié)果集。以下是GROUP BY用法的示例:
SELECT column_name, aggregate_function(column_name) FROM table_name WHERE condition GROUP BY column_name ORDER BY column_name;
在上面的語(yǔ)句中,列名是要分組的列名。列名必須是表或視圖中實(shí)際存在的列。聚合函數(shù)將應(yīng)用于分組列,以便在每個(gè)組中計(jì)算匯總值。WHERE子句是可選的,它指定選擇哪些行應(yīng)包括在結(jié)果集中。使用ORDER BY子句按特定方式對(duì)結(jié)果進(jìn)行排序。
這是一個(gè)例子,它顯示如何使用GROUP BY子句將表進(jìn)行分組:
SELECT department, SUM(salary) as total_salary FROM employees GROUP BY department;
在上面的語(yǔ)句中,我們按部門將員工表分組,并計(jì)算每個(gè)部門員工工資的總和。
在GROUP BY子句中,可以根據(jù)多個(gè)列對(duì)結(jié)果進(jìn)行分組,如下所示:
SELECT department, job_title, COUNT(*) as num_employees FROM employees GROUP BY department, job_title;
在上面的語(yǔ)句中,我們按部門和職位將員工表分組,并計(jì)算每個(gè)部門和職位中有多少員工。
總的來說,GROUP BY子句是查詢語(yǔ)句中非常重要的一部分。它允許您根據(jù)特定列對(duì)結(jié)果進(jìn)行分組,并使用聚合函數(shù)實(shí)現(xiàn)需要的結(jié)果。