MySQL數據庫的分組和聚合函數是常用的操作,當需要對某一列進行分組計算時可以采用GROUP BY語句,而當需要找出每個分組中的最大值時可以先進行分組再去最大值。
SELECT column1, MAX(column2) FROM table1 GROUP BY column1;
以上的SQL語句可根據column1分組,然后在每個分組中去最大值。其中column1為需要進行分組計算的列,column2為需要找出最大值的列,table1為需要查詢的表。
使用分組和去最值的例子可以是,在訂單表中查詢每個買家最高的訂單金額:
SELECT buyer, MAX(amount) FROM orders GROUP BY buyer;
以上的SQL語句可根據買家名稱分組,然后在每個分組中找出最高的訂單金額。結果會列出每個買家的名稱和他們的最高訂單金額。
在使用分組和聚合函數進行SQL操作時應注意,如果SELECT語句中不包含我們所分組或統計的列,則聚合函數會將整張表或查詢結果集中所有行的數據進行統計。