Μάθε πώς να συγκεντρώνεις και να ομαδοποιείς δεδομένα μέσα σε έναν εσωτερικό πίνακα 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. Πόσο αποδοτικά μπορείς να την ολοκληρώσεις; Μπορείς να το κάνεις διαβάζοντας κάθε καταγραφή του πίνακα μόνο μία φορά;
Γράψου στο Exercism για να μάθεις και να κατακτήσεις ABAP με 54 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.