學習如何在 ABAP 內部表格中彙總與分組資料。
你的類別會收到一個名為initial_numbers的內部表格。它有兩個欄位:GROUP和NUMBER。
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。每個組別都有多筆記錄。
| GROUP | NUMBER |
|---|---|
| A | 10 |
| B | 5 |
| A | 6 |
| C | 22 |
| A | 13 |
| C | 500 |
你的任務是回傳一個內部表格,每組一筆記錄。這筆記錄應包含原始表格中每組的記錄數量(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 中有許多方法可以完成這項任務。你能多有效率地完成它呢?你能在只讀取表格中每筆記錄一次的情況下做到嗎?