SQL 之 Group By
Group By從字面意義上理解就是根據By指定的規則對數據進行分組,所謂的分組就是將一個數據表劃分紅若干個小區域。mysql
例如:有這麼一張表sql
![](http://static.javashuo.com/static/loading.gif)
在執行group by 類別操做以後表就變成了這種形式函數
類別 | 組 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
a |
|
||||||||||||
b |
|
||||||||||||
c |
|
由於是按照類別進行分組,因此分組後的表中就只剩下字段類別了,其餘的字段所有被保存在組中。
spa
注意:組中的字段是沒法被SELECT關鍵字訪問的,若是訪問了就會出錯。server
例如: Select 數量 from test group by 類別;
這時軟件就會提示——(在sql server中是這樣的,在mysql中是隨便列出組中的一列)
選擇列表中的列 '數量' 無效,由於該列沒有包含在聚合函數或GROUP BY 子句中。
由於數量和摘要字段都在組中,SELECT關鍵字找不到這兩個字段,因此就會出錯。
若是隻是查詢 類別就不會出現問題,由於 類別不在組中,因此SELECT關鍵字就能夠找到該字段。utf-8