これがGROUPBYの仕組みです。いくつかの行を取り、それらを1つの行に変換します。このため、一部の列(フィールド)に異なる値があるすべての結合された行をどう処理するかを知る必要があります。これが、選択するフィールドごとに2つのオプションがある理由です。GROUPBY句に含めるか、集計関数で使用して、フィールドを組み合わせる方法をシステムが認識できるようにします。
たとえば、次のテーブルがあるとします。
Name | OrderNumber
------------------
John | 1
John | 2
GROUP BY Nameと言うと、結果に表示するOrderNumberをどのようにして知ることができますか?したがって、group byにOrderNumberを含めると、これらの2つの行になります。または、集計関数を使用して、OrderNumberの処理方法を示します。例:MAX(OrderNumber)
、これは結果がJohn | 2
またはSUM(OrderNumber)
これは、結果がJohn | 3
。