最近のアクセス:
Query オブジェクト: For each 節

Query オブジェクトの For each 節では、1 つの軸を使用して分割することにより、データエレメントを複数に分けることができます。
つまり、必要に応じて、Query の結果を値ごとに表示できます。これは、SQL の group by の操作に似ています。構文は以下の要素から構成されます:
イメージ:46252.png
for each:
イメージ:46215.png
引数:
イメージ:46253.png
算術計算式:
イメージ:46216.png
まとめると、次のようになります。
<式 1> for each <式 2>
入力値の説明:
  • <算術計算式> は分割するデータです。単純な式で定義することも、Aggregate 式 (集計式) で定義することもできます。
  • <引数> は値を分割するために使用する軸です。この値は単純な式で定義する必要があります (Aggregate 式は使用できません)。

使用例

この節を適用できるシナリオは多数あります。ここでは、単純なシナリオと少し複雑なシナリオを取り上げます。
自動車ディーラーの例で説明します。

単純なシナリオ

各自動車メーカーの売上の合計を求めます。その値を国別に表示します。これを行うため、次のようにクエリ構造を定義します。
# 項目属性
Sum(InvoiceTotal) for each CountryName
CarBrandName
クエリを実行すると、値が次のように表示されます。
イメージ:33972.png
このタイプの構文は、次の場合にも役立ちます。
  • 項目属性の値が時間とともに動的に変化するとき
  • クエリの構造が定義されている場合にその値が不明であるとき

複雑なシナリオ

売上の合計の平均値を、各自動車メーカーの合計値 (経時的な国別の値) と比較します。次のように構造を定義します。
# 項目属性
Sum(InvoiceTotal) for each CountryName
Average(InvoiceTotal) by CountryName
Year(InvoiceDate)
結果は次のようになります:
イメージ:33975.png

参考情報

使用可能バージョン

この動作は GeneXus 16 Upgrade 11 以降で利用できます。




サブページ
Created: 18/10/29 01:06 by Admin Last update: 21/05/21 02:39 by Admin
カテゴリ
Powered by GXwiki 3.0