Füllung zusätzliche Spalten einer internen Tabelle mit zusätzlichen Daten durch SELECT-Anweisung? Kann das getan werden?

SELECT matnr ersda ernam laeda 
FROM mara 
INTO CORRESPONDING FIELDS OF TABLE gt_mara 
UP TO 100 ROWS.

In diesem Punkt habe ich 100 Einträge in der itab gt_mara.

SELECT aenam vpsta pstat lvorm mtart
  FROM mara
  INTO CORRESPONDING FIELDS OF TABLE gt_mara
  FOR ALL ENTRIES IN gt_mara
  WHERE matnr = gt_mara-matnr AND
        ersda = gt_mara-ersda AND
        ernam = gt_mara-ernam AND
        laeda = gt_mara-laeda.

In diesem Punkt habe ich 59 Einträge. Was Sinn macht. Dieser code fehlerhaft ist, denn es könnte sein, ändern Sie die Selektionskriterien, die zur Laufzeit.

Sowieso, was ich beabsichtigte, war dies: wählen Sie die ersten 4 Felder der Tabelle an einer Stelle, und wählen Sie dann die anderen 5 bei einigen anderen.

Natürlich, dies ist nur ein Beispiel. Vielleicht das zweite wählen würde getan werden, auf einer anderen Tabelle mit dem gleichen Schlüssel oder mit einer unterschiedlichen Anzahl von Feldern.

So kann dies noch getan werden?
Gibt es weitere effiziente Methoden, um dies zu erreichen, als das, was mir in den Sinn kommt standardmäßig (nochmal das komplette select) ?

Schreibe einen Kommentar