- Wichtige Felder selektieren ( Select * vermeiden ).
DATA ls_corona TYPE corona.
SELECT person_id first_name FROM corona INTO ls_corona.
WRITE: / ls_corona-person_id, ls_corona-first_name.
ENDSELECT.
- Statt IF-Anweisung WHERE Clause nutzen.
SELECT person_id first_name FROM corona INTO ls_corona WHERE person_id = 100.
WRITE: / ls_corona-person_id, ls_corona-first_name.
ENDSELECT.
- Geschachtelter SELECTs vermeiden.
Beispiel für schlechten Code.
SELECT person_id FROM corona_table_1 INTO ls_corona_table_1.
SELECT city_id FROM corona_table_2 INTO ls_corona_table_2 WHERE postal_code = ls_corona_table_1-postal_code.
ENDSELECT.
ENDSELECT.
Beispiel für besseren Code.
SELECT person_id city_id FROM corona_table_1 INNER JOIN corona_table_2 ON
corona_table_1~postal_code = corona_table_2~postal_code.
ENDSELECT.
Last auf dem Datenbankserver | Last auf dem Anwendungsserver |
SELECT * FROM corona_table_1 INTO TABLE itab ORDER BY person_id | SELECT * FROM corona_table INTO TABLE itab. SORT itab by person_id. |