GROUP BY
SOQL クエリで GROUP BY オプションを使用すると、個々のクエリ結果の反復処理を避けることができます。つまり、多くのレコードを個別に処理する代わりにレコードのグループを指定します。
GROUP BY を SUM() や MAX() などの集計関数と共に使用することで、コードで個々のレコードを処理することなく、データを集計してクエリ結果をロールアップできます。
fieldGroupByList では、グループ化する項目のカンマ区切りのリストを指定します。SELECT 句の項目リストに集計関数が含まれている場合は、GROUP BY 句に集計関数以外のすべての項目を含める必要があります。
たとえば、GROUP BY を使用せずに、各 LeadSource 値に関連付けられているリードの数を調べるには、次のクエリを実行できます。
次に、クエリ結果を反復するコードを記述し、各 LeadSource 値のカウンターを増分します。GROUP BY を使用すると、追加のコードを記述せずに同じ結果を取得できます。次に例を示します。
オブジェクトのすべての個別値 (null を含む) を照会するには、集計関数を使用せずに GROUP BY 句を使用できます。次のクエリは、LeadSource 項目に保存されている個別の値セットを返します。