Select mit genau 1 Satz vor und 1 Satz nach Timestamp

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
4 Beiträge • Seite 1 von 1
4 Beiträge Seite 1 von 1

Select mit genau 1 Satz vor und 1 Satz nach Timestamp

Beitrag von babap (Expert / 681 / 1 / 1 ) »
Hallo,

ich soll aus einer Datenbanktabelle mit einer Reihe von Messwerten zu einem gegebenen Timestamp (Datum/Zeit) genau zwei Datensätze liefern, nämlich den letzten Datensatz vor dem Stichtag und den 1. Datensatz nach dem Stichtag.

ACHTUNG: ich habe ein Feld, welches einen aufsteigenden Timestamp repräsentiert (ich könnte auch einen Inversen Timestamp produzieren wie in IMRG).
ACHTUNG: Die Situation mit "es ex. ein Satz mit genau dem gegebenen Timestamp" löse ich später!!

FRAGE: Welche Felder brauche ich im Schlüssel meiner Datenbanktabelle und wie baue ich das SELECT-Statement auf?

Timestamps:
A
C
E
F
G
P
Q
S
Z

Select "Neighbours" from Tabelle
where Timestamp = H.

Ergebnismenge
G
P


Danke schonmal.
Gruß
babap

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


Beitrag von black_adept (Top Expert / 4019 / 113 / 913 ) »
Hi babap,

ich hab das Gefühl, als ob man hier tatsächlich mal einen SELECT ohne "INTO TABLE" gebrauchen kann.


Idee - 2 Selects:

Code: Alles auswählen.

SELECT felder
    INTO zeile
    FROM tabelle
    WHERE timestamp >= stichtag
    ORDER BY timestamp.
  EXIT.
ENDSELECT.
und

Code: Alles auswählen.

SELECT felder
    INTO zeile
    FROM tabelle
    WHERE timestamp <= stichtag
    ORDER BY timestamp DESCENDING.
  EXIT.
ENDSELECT.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Beitrag von Kowi (ForumUser / 28 / 0 / 0 ) »
Hi,

man könnte auch mit "UP TO 1 ROWS" arbeiten, sprich:

SELECT
*|<Feldliste>
UP TO 1 ROWS
INTO TABLE <itab>
FROM
<table>
WHERE
timestamp < <var_timestamp>
ORDER BY timestamp DESCENDING

und:

SELECT
*|<Feldliste>
UP TO 1 ROWS
INTO TABLE <itab>
FROM
<table>
WHERE
timestamp > <var_timestamp>
ORDER BY timestamp


Gruß,
Kowi

Super: absolut schnelle Reaktion, absolut perfekter Tip

Beitrag von babap (Expert / 681 / 1 / 1 ) »
Hallo kowi
hallo black_adept,

das hatte ich im Traum nicht erwartet.
:D
Abgeguckt, eingetippt (kopiert!) FUNKTIONIERT!!

DESCENDING und UP TO 1 ROWS sind ja der Bringer.
Und das geht sogar mit weiteren Einschränkungen bei WHERE-Klausel.

Nochmals
vielen herzlichen Dank!
babap

Seite 1 von 1

Vergleichbare Themen

4
Antw.
2354
Views
Satz aus Tableview löschen
von Massa » 14.12.2005 11:28 • Verfasst in Web-Dynpro, BSP + BHTML
9
Antw.
6063
Views
GET PERNR - Nächster Satz
von mamba » 12.09.2007 08:56 • Verfasst in ABAP® für Anfänger
3
Antw.
2444
Views
ABAP immer letzter Satz
von tjanosch » 08.08.2007 16:05 • Verfasst in ABAP® für Anfänger
4
Antw.
3235
Views
Mwst-Satz in SAPscript Rechnungsformular
von piemo » 25.01.2008 12:25 • Verfasst in ABAP® für Anfänger
2
Antw.
2717
Views
Provide -> neuesten SAtz lesen
von Tunoto » 07.03.2006 13:13 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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.