subquery oder andere Lösung

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

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

subquery oder andere Lösung

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

ich habe folgendes Problem.

In einer Tabelle habe ich diverse Kennzahlen, calyear und ein Merkmal Berechnungslauf. Zu einem Kalenderjahr existieren mehrere Berechnungslaufes.

Ich benötige alle Kennzahlen zu dem letzten Kalenderjahr und dem höchsten Berechnungslauf.

Mit nachfolgendem SQL-Statement kann ich den Wert letztes calyear und größten Wert des Bererchnungslaufes ermitteln.

Code: Alles auswählen.

  SELECT DISTINCT
     
    calyear
    max( Berechnungslauf ) as Berechnungslauf

  from Tabelle_a
  where calyear =
  ( SELECT max( calyear ) from Tabelle_a )
  GROUP BY
    calyear.

Muss ich mir das Ergebnis in eine interne Tabelle schreiben und dann über for all entries erenut die Tabelle abfragen?
Also ist nachfolgendes die beste Lösung?

Code: Alles auswählen.

  SELECT DISTINCT
     
    calyear
    max( Berechnungslauf ) as Berechnungslauf

  INTO CORRESPONDING FIELDS OF TABLE LT_zeit
  from Tabelle_a
  WHERE calyear =
  ( SELECT MAX( calyear ) FROM Tabelle_a )
  GROUP BY
  calyear.

.
  SELECT DISTINCT
     
  *

  INTO CORRESPONDING FIELDS OF TABLE lt_tmp
  FROM Tabelle_a
  FOR ALL ENTRIES IN LT_ZEIT
  WHERE calyear = LT_ZEIT-calyear
  AND Berechnungslauf = LT_ZEIT-Berechnungslauf.


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


Re: subquery oder andere Lösung

Beitrag von JHM (Top Expert / 1221 / 2 / 204 ) »
meistercoach hat geschrieben:Muss ich mir das Ergebnis in eine interne Tabelle schreiben und dann über for all entries erenut die Tabelle abfragen?
Man kann SubSelects auch schachteln:

Code: Alles auswählen.

SELECT *
  INTO itab
  FROM tabelle_a
  WHERE calyear = ( SELECT MAX( calyear ) FROM tabelle_a ) 
    AND berechnungslauf = ( SELECT MAX( berechungslauf ) 
                                  FROM tabelle_a 
                                  WHERE calyear = ( SELECT MAX( calyear ) 
                                                    FROM tabelle_a ) ).
Für die Ermittlung des MAX( berechnungslauf) benötigst du das MAX( calyear ). Dieses kannst du per SubSelect im SubSelect ermitteln.

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

Gruß Hendrik

Seite 1 von 1

Vergleichbare Themen

3
Antw.
3073
Views
Subquery mit Name?
von Bajdu » 14.08.2006 09:54 • Verfasst in ABAP® für Anfänger
9
Antw.
5480
Views
Frage zu Subquery
von Spookykid » 06.07.2011 11:22 • Verfasst in ABAP® für Anfänger
13
Antw.
5824
Views
Subquery gesucht
von Thomas R. » 10.12.2015 09:49 • Verfasst in ABAP® Core
1
Antw.
1195
Views
Datenbank Delete mit Subquery
von JohnLocklay » 28.05.2019 14:47 • Verfasst in ABAP® Core
2
Antw.
1831
Views
Subquery über Tabelle JEST
von havanna » 02.10.2020 08:58 • 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

Aktuelle Forenbeiträge

SFP/SEGW - Fehler beim Rendering
vor einer Woche von Manfred K. 1 / 37249
Pflegeview zeigt nicht alle Daten an
vor einer Woche von sapdepp gelöst 7 / 38116
ALV Grid und Dynprofeld
vor einer Woche von PeterPaletti 5 / 36833

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.

Aktuelle Forenbeiträge

SFP/SEGW - Fehler beim Rendering
vor einer Woche von Manfred K. 1 / 37249
Pflegeview zeigt nicht alle Daten an
vor einer Woche von sapdepp gelöst 7 / 38116
ALV Grid und Dynprofeld
vor einer Woche von PeterPaletti 5 / 36833

Unbeantwortete Forenbeiträge

SFP/SEGW - Fehler beim Rendering
vor einer Woche von Manfred K. 1 / 37249
Benutzerdefinierte Felder PSP
letzen Monat von Rabea1103 1 / 87695
Spool vereinen OTF und PDF
January 2026 von anna2205 1 / 103209
XSLT und Loipro05 Transformation
December 2025 von Torsten1965 1 / 111333