結合合計函數,根據一個或多個列對結果集進行分組,說白了就是將重複值進行合併html
FROM table_1,table_2 GROUP BY column_1,column_2 ORDER BY column_1,column_2
SELECT Customer,SUM(OrderPrice) FROM Orders Group by Customer;
注:函數
GROUP BY子句必須知足必定的條件,SELECT 語句裏列出的所有字段,除了彙總字段(使用匯總函數的)以外,所有都要出如今GROUP BY裏,code
可是順序無所謂htm
--根據YEAR進行分組,與order by 相似 SELECT YEAR(DATE_HIRE) AS YEAR_HIRED,SUM(SALARY) FROM TABLE_NAME GROUP BY 1;
SELECT column1,column2 FROM table_name --GROUP BY在運行的時候先將按照column2排序在,按照column2排序,而後再進行組合 GROUP BY column2,column1 --ORDER BY只是純粹的排序,將按照column1,colum2排序 ORDER BY column1,column2
GROUP BY子句可用在CREATE VIEW 語句裏進行數據排序,而ORDER BY子句不行。blog
SQL 中ROLLUP 用法 - o(∩_∩)o... - 博客園 排序
HAVING子句在SELECT語句裏與GROUP BY聯合使用,用於告訴GROUP BY子句在輸出裏包含哪些組,get
有點相似SELECT 中的WHERE條件語句,使用HAVING子句能夠讓結果裏包含或是去除整組的數據博客
SELECT column_name,aggregate_function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name HAVing aggregate_function(column_name) operator value
5io