Select into itab

Aus SAP-Wiki
Wechseln zu: Navigation, Suche

Es ist nicht immer besser

Select 
  .. 
  into table itab
  from dbtbl
  where .. 

zu nutzen anstatt eines Befehls

Select
  ..
  into wa
  from dbtbl
  where ... 

  Append. 

Endselect.

Häufig ist es besser "Select .. into table itab" zu verwenden, wenn die Anzahl der Datensätze in der gefüllten internen Tabelle nicht allzu groß ist oder wenn im Select die vollständigen Bedingungen abgebildet werden können, die für das Füllen der internen Tabelle maßgeblich sind.

Allerdings kann manchmal die interne Tabelle sehr groß sein. Wenn z. B. die interne Tabelle Millionen von Datensätzen enthält, sollte man in aller Regel nicht den Befehl "Select .. into table itab" verwenden, sondern mit einer Schleife zu arbeiten

Select.
...
Endselect.

Dann spart man auf dem Applikationsserver Speicherplatz. Das Argument, dass auf diesem Wege jeweils nur ein Datensatz von der Datenbank auf den Applikationsserver transportiert wird, ist nicht korrekt. Die Datenbank schickt paketweise die Daten an den Applikationsserver.