Aprende a agregar y agrupar datos dentro de una tabla interna de ABAP.
Tu clase recibirá una tabla interna llamada initial_numbers. Tiene dos columnas: GROUP y 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.
Los datos de esta tabla se componen de tres grupos: A, B y C. Hay varios registros en cada grupo.
| GROUP | NUMBER |
|---|---|
| A | 10 |
| B | 5 |
| A | 6 |
| C | 22 |
| A | 13 |
| C | 500 |
Tu tarea es devolver una tabla interna con un registro por grupo. Este registro debe contener la cantidad de registros de la tabla original por grupo (COUNT), la suma de todos los valores de NUMBER en este grupo (SUM), el valor mínimo del grupo (MIN), el valor máximo del grupo (MAX) y el promedio de todos los valores de ese grupo (AVERAGE).
La tabla que se espera devolver tiene la siguiente definición:
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.
Hay muchas maneras de realizar esta tarea en ABAP. ¿Qué tan eficiente puedes ser para completarla? ¿Puedes lograrlo leyendo cada registro de la tabla una sola vez?
Regístrate en Exercism para aprender y dominar ABAP con 54 ejercicios y mentoría humana real, todo gratis.