概要:このチュートリアルでは、OracleGROUP BY句を使用して行をグループ化する方法を学習します。

ORACLE GROUP BY句の概要

GROUP BY句は、SELECT文で使用して、列または式の値によって行を集計行のセットにグループ化します。 GROUP BY句は、グループごとに一つの行を返します。,

GROUP BY句は、AVG()COUNT()MAX()MIN()SUM(). この場合、aggregate関数はグループごとの要約情報を返します。 たとえば、いくつかのカテゴリにある商品のグループを指定すると、AVG()関数は、各カテゴリの商品の平均価格を返します。,

OracleGROUP BY句の構文を次に示します。

GROUP BY句は、FROM句の後に表示されます。, WHERE句が表示されている場合、GROUP BY句は、次のクエリに示すようにWHERE句の後に配置する必要があります。

GROUP BY句は、グループ化次のような列c1c2およびc3GROUP BY句には、集計またはグループ化列のみを含める必要があります。,

一度に計算するグループ化の複数のレベルを指定する場合は、次のROLLUP構文を使用します。

詳細については、ROLLUPチュートリアルを参照してください。,

この文は、DISTINCT演算子を使用する次の文と同じ効果を持ちます。

b)集計関数の例を持つOracle GROUP BY

次の文は、

この例では、顧客ごとの注文をグループ化し、COUNT()関数を使用してグループごとの注文数を返します。,

より意味のあるデータを取得するには、ordersテーブルとcustomersテーブルを次のように結合します。

結果は次のとおりです。

c)式の例を使用したoracle group by

次の例では、注文を年ごとにグループ化し、年ごとの注文数を返します。

この例では、EXTRACT()関数を使用して、注文の日付から年情報を取得しました。,

前の例とは異なり、GROUP BY句で年を返す式を使用しました。,次の図は、結果を示しています。

D)ORACLE GROUP BY with WHERE句の例

この例では、GROUP BY句をWHEREすべての顧客の出荷注文の数を返す句

出力は次のとおりです。

oracleは常にWHEREGROUP BY句。,

E)ORACLE GROUP BY with ROLLUP example

次の文は、売上金額を計算し、customer_idstatus、および(customer_idstatus)でグループ化します。

このチュートリアルでは、oracleGROUP BY句を使用して行をグループにグループ化する方法を学習しました。/p>

  • このチュートリアルは役に立ちましたか?
  • イェスノ