不是單組分組函式,一般是在資料庫執行查詢語句,不合規地使用了諸如sum、avg、count等聚合函式時,報的錯。
比如,要統計各個學生的期末成績總分:select 姓名, sum(單科成績) as 總成績 from 成績表。這樣就會報錯,必須得用group by 宣告以哪個欄位作為分組計算依據。正確寫法是:select 姓名, sum(單科成績) as 總成績 from 成績表 group by 姓名。
現在要求,姓名還不夠,還得加上班級,於是寫作:select 班級,姓名, sum(單科成績) as 總成績 from 成績表 group by 姓名,居然又報錯了。
那是因為 班級只是放在查詢列裡,還沒有用group by宣告。因此應該是:select 班級,姓名, sum(單科成績) as 總成績 from 成績表 group by 班級,姓名。
不是單組分組函式,一般是在資料庫執行查詢語句,不合規地使用了諸如sum、avg、count等聚合函式時,報的錯。
比如,要統計各個學生的期末成績總分:select 姓名, sum(單科成績) as 總成績 from 成績表。這樣就會報錯,必須得用group by 宣告以哪個欄位作為分組計算依據。正確寫法是:select 姓名, sum(單科成績) as 總成績 from 成績表 group by 姓名。
現在要求,姓名還不夠,還得加上班級,於是寫作:select 班級,姓名, sum(單科成績) as 總成績 from 成績表 group by 姓名,居然又報錯了。
那是因為 班級只是放在查詢列裡,還沒有用group by宣告。因此應該是:select 班級,姓名, sum(單科成績) as 總成績 from 成績表 group by 班級,姓名。