Problem mit Select-Anweisung

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

Problem mit Select-Anweisung

Beitrag von Crashday2707 (ForumUser / 4 / 0 / 0 ) »
Hallo Leute,

ich habe ein kleines Problem mit einer Select-Anweisung. Ich betrachte die folgende Tabelle:

DATA: lt_test TYPE TABLE OF gt_test.

lv_key = &BA

Tabelle: gt_test
docnr docvr key
1000 02 &BA
1000 03 &BA
1000 04 &BA
1000 05 &BA
1010 01 &BA
1010 02 &BA
1010 03 &BA
1020 01 &BB
1020 02 &BB
1020 03 &BB
1020 04 &BB
1020 05 &BB

Ich möchte nun gerne alle Dokumente und die dazugehörige Version, wobei ich den Schlüssel (key) angeben und ich jeweils nur die Dokumente mit der aktuellsten Version abspeichern möchte. Das heißt als Ergebnis sollte sowas rauskommen:

1000 05 &BA
1010 03 &BA

Es sollte ja irgendwas mit

Select * from gt_test INTO TABLE lt_test WHERE key = lv_key AND ... (?) Aber ich weiß nicht, wie ich die weitere Anweisung definieren soll. Ich habe irgendwas an GROUP BY gedacht, nur irgendwie fällt mir das doch schwer.

Es wäre auch in Ordnung, zunächst nur im Select alle mit key = lv_key rauszusuchen und danach im Loop eine Where-Anweisung zu ergänzen, wo nur die Dokumente, mit der höchsten Version, rauszupicken. Es käme aber wahrscheinlich dasselbe heraus.

Es wäre super, wenn mir jemand dabei helfen könnte - Danke :)

Crashday

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


Re: Problem mit Select-Anweisung

Beitrag von ralf.wenzel (Top Expert / 3921 / 200 / 280 ) »
SELECT funktioniert nur mit Datenbanktabellen, nicht mit internen Tabellen. Du hast da wohl ein grundlegendes Verständnisproblem, was du suchst, ist LOOP.


Ralf
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Problem mit Select-Anweisung

Beitrag von Crashday2707 (ForumUser / 4 / 0 / 0 ) »
Die Tabelle gt_test ist in meinem Problem eine Datenbanktabelle und keine interne Tabelle, daher geht die Select-Anweisung. Es sollte nur ein Beispiel sein, wie so eine Tabelle in meinem Fall ungefähr aussieht. Ich will den Loop nachher auf die Tabelle lt_test verwenden, wo ich dann vorgehabt hatte, eine WHERE-Bedingung einzufügen, falls nicht die WHERE-Bedingung direkt vollständig in dem Select-Befehl reingeht.

Re: Problem mit Select-Anweisung

Beitrag von ewx (Top Expert / 4843 / 310 / 638 ) »
Da wirst du mit einem Sub-Select arbeiten müssen:
http://www.tricktresor.de/blog/sub-queries/

Ich glaube, mit GROUP kommst du nicht zum Ziel.

Re: Problem mit Select-Anweisung

Beitrag von DeathAndPain (Top Expert / 1933 / 253 / 410 ) »
Die Aggregatfunktion MAX( ) wird hier sicherlich hilfreich sein. Oder ORDER BY. Ich würde erst mal alle docnr per DISTINCT in eine interne Tabelle einlesen und dann für jede davon einen SELECT UP TO 1 ROWS mit ORDER BY docvr DESCENDING machen. Geht vielleicht auch mit einem Subselect, in dem dann der MAX( ) steckt.

Seite 1 von 1

Vergleichbare Themen

4
Antw.
3837
Views
Problem mit IN Klausel in SELECT Anweisung
von Silberwind » 06.06.2008 10:32 • Verfasst in ABAP Objects®
3
Antw.
1722
Views
Select-Anweisung
von phil1982 » 02.08.2007 08:30 • Verfasst in ABAP® für Anfänger
9
Antw.
6117
Views
Select-Anweisung
von ??? » 23.05.2005 10:22 • Verfasst in ABAP® für Anfänger
2
Antw.
989
Views
Dynamische SELECT-Anweisung
von mareikemei92 » 17.07.2019 19:16 • Verfasst in ABAP® Core
7
Antw.
2887
Views
Dynamische Select-Anweisung
von bliP! » 06.02.2006 13:54 • Verfasst in ABAP® für Anfänger

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.

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1641
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8245