Select distinct into itab

Aus SAP-Wiki
Wechseln zu:Navigation, Suche

Siehe Schlüsselbefehl Select.

Siehe ABAP Inline-Deklarationen.

Ein recht eleganter Befehl ist "select distinct <feldname1>, <feldname2> .. into table itab". Es werden von den Feldnamen nur die unterschiedlichen Werte in die interne Tabelle gefüllt.

Select distinct mit 1 Feld

Hier werden z. B. alle Kundenauftragsaufnummern gefüllt, wo es mindestens eine Position gibt.

select DISTINCT
  vbeln
  into table @data(lt_vbeln)
  from vbap.

Select distinct mit meheren Feldern

Stehen hinter "select distinct" mehrere Felder, so gilt die Kombination der Felder als einzigartig.

Hier sollen alle Views aufgeführt werden, wo mindestens eine Join-Bedingung die Tabelle "VBAK" verknüpft.

select DISTINCT
  DD27M~VIEWNAME,
  DD27M~TABNAME
  into table @data(lt_felder)
  from DD27M
  where TABNAME = 'VBAK'
  order by DD27M~VIEWNAME.

oder hier werden alle Kundennummern aufgelistet für einen Vertriebsbelegtyp, sortiert nach Kundennummer.

select distinct
  vbtyp,
  kunnr
  into table @data(lt_kunnr)
  from vbak
  order by kunnr, vbtyp.