DELETE aus internen Tabelle

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Getting started ... Alles für einen gelungenen Start.
5 Beiträge • Seite 1 von 1
5 Beiträge Seite 1 von 1

DELETE aus internen Tabelle

Beitrag von meistercoach (ForumUser / 22 / 13 / 0 ) »
Hallo zusammen,

ich möchte aus einer internen Tabelle alle Datensätze löschen bei denen in einem Feld bestimmte Wert nicht stehen
Also theoretisch:

DELETE ITAB WHERE FELD NOT LIKE ('0199','0299','0399'). besser wäre noch DELETE ITAB WHERE FELD LIKE ('%99')
beide Varianten kann ich leider nicht im ABAP schreiben.

Eine Löschen über eine Positivliste.
DELETE ITAB WHERE FELD in (0001 ...) ist nicht möglich, da hier viel zu viele Werte eingegeben werden müssten.

Kann ich das löschen irgendwie in einem Schritt machen, oder geht das ganze ggfls. nur über einen LOOP der internen Tabelle mit schreiben einer neuen internen Tabelle.

Das dauert dann über 5 MIO Datensätze aber seine Zeit, oder?

Viele Grüße

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: DELETE aus internen Tabelle

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Moin,

wie wärs mit diesem Ansatz:

Code: Alles auswählen.

LOOP AT itab INTO ls_itab WHERE feld NE '0199'.
  DELETE TABLE itab FROM ls_itab.
ENDLOOP.
Ist jetzt ungetestet und müsste noch verfeinert werden, aber auf diese Weise loopst du durch die Tabelle und das nur auf die Einträge, die du löschen willst.

Folgende Benutzer bedankten sich beim Autor Thanatos82 für den Beitrag:
meistercoach

Gruß,
der Matze

Re: DELETE aus internen Tabelle

Beitrag von meistercoach (ForumUser / 22 / 13 / 0 ) »
Gleichfalls Moin und schon mal Danke :-)

Grundsätzlich funktioniert das, Kann ich jetzt noch statt 0199

LOOP AT itab INTO ls_itab WHERE feld NE '0199'.
DELETE TABLE itab FROM ls_itab.
ENDLOOP.

mit irgendeiner ABAP Technik auch

LOOP AT itab INTO ls_itab WHERE feld NE '%99'.
DELETE TABLE itab FROM ls_itab.
ENDLOOP.

das ganze laufen lassen? ggfls. müsste ich sonst alle Werte erst checken.

Re: DELETE aus internen Tabelle

Beitrag von a-dead-trousers (Top Expert / 4285 / 214 / 1141 ) »

Code: Alles auswählen.

DELETE TABLE itab WHERE feld NP '*99'.
cheers

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
meistercoach

Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: DELETE aus internen Tabelle

Beitrag von meistercoach (ForumUser / 22 / 13 / 0 ) »
Danke schön :-)

Genau diese Information "NP" hat mir gefällt. Es funktioniert alles fehlerfrei.

Seite 1 von 1

Vergleichbare Themen

8
Antw.
5409
Views
Performance Delete kundeneigene Tabelle
von mcw » 05.09.2005 16:57 • Verfasst in ABAP® Core
0
Antw.
1298
Views
3
Antw.
5251
Views
Inhalt einer internen Tabelle in eine transparente Tabelle?
von Gast » 19.10.2004 14:23 • Verfasst in ABAP® Core
2
Antw.
3346
Views
Daten aus internen Tabelle in Tabelle speichern
von Stahle71 » 03.06.2015 11:03 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.