トラック
/
ABAP
ABAP
/
演習
/
ITABの集計
ITABの集計

ITABの集計

初級

説明

ABAPの内部テーブルでデータを集計・グループ化する方法を学びましょう。

クラスにはinitial_numbersという名前の内部テーブルが渡されます。このテーブルにはGROUPとNUMBERという2つの列があります。

TYPES: BEGIN OF initial_numbers_type,
        group  TYPE group,
        number TYPE i,
       END OF initial_numbers_type,
       initial_numbers TYPE STANDARD TABLE OF initial_numbers_type WITH EMPTY KEY.

このテーブルのデータは、A・B・Cの3つのグループで構成されています。各グループには複数のレコードがあります。

GROUP NUMBER
A 10
B 5
A 6
C 22
A 13
C 500

ここでのタスクは、グループごとに1件のレコードを持つ内部テーブルを返すことです。このレコードには、元のテーブルにおけるグループごとのレコード数(COUNT)、そのグループ内のすべてのNUMBER値の合計(SUM)、グループ内の最小値(MIN)、最大値(MAX)、そのグループ内のすべての値の平均(AVERAGE)を含める必要があります。

返すべきテーブルは、次のように定義されています。

TYPES: BEGIN OF aggregated_data_type,
        group   TYPE group,
        count   TYPE i,
        sum     TYPE i,
        min     TYPE i,
        max     TYPE i,
        average TYPE f,
       END OF aggregated_data_type,
       aggregated_data TYPE STANDARD TABLE OF aggregated_data_Type WITH EMPTY KEY.

ボーナス

ABAPでこのタスクを達成する方法はたくさんあります。どれだけ効率よくタスクを完了できるでしょうか? テーブルの各レコードを一度だけ読み取るだけで、実現できるでしょうか?

GitHubで編集する リンクは新しいウィンドウまたはタブで開きます
ABAP Exercism

ITABの集計を始める準備はできましたか?

Exercismに登録すれば、54個の演習、そして本物の人間によるメンタリングとともに、ABAPを学んでマスターできます。すべて無料です。