andywoerlitz
Goto Top

Oracle SQL Abfrage mit aktuellem Datum

Liebe Mitstreiterinnen und Mitstreiter,
duch den Ausfall eines Kollegen muss ich kurzfristig seine SQL Abfrage verbessern.
Wir fürden die Abfrage jeden Werktag durch.
Leider müssen wir in einer Zeile Täglich händisch das Datum ändern.
Nun frage ich mich ob ich das nicht automatisieren kann das es immer Automatisch den Vortag nimmt.
Besonders interessant wäre es noch, das es bei Sonntag dieser Tag und der Samstag und Freitag mit abgefragt werden.

Bisher lautet die Zeile so:

WHERE psn.psn_ogs_id = org.id
AND to_char(doc.erstdat,'RRRRMMDD') = '20210429' --ändern (Datum Vortag)
ORDER BY doc.psn_id


Ich hoffe es kannmir jemand helfen

Content-Key: 666257

Url: https://administrator.de/contentid/666257

Printed on: April 25, 2024 at 09:04 o'clock

Member: akretschmer
akretschmer Apr 30, 2021 at 08:46:49 (UTC)
Goto Top
current_date oder sowas in der Richtung, hab kein oraggle.
Member: ukulele-7
ukulele-7 Apr 30, 2021 at 09:37:55 (UTC)
Goto Top
Also erstmal würde man natürlich erstdat nicht in eine Zeichenkette konvertieren sondern als Datumsformat(?) belassen. Dann scheint es bei Oracle auch getdate() zu geben (ich nutze das bei MSSQL), eventuell muss dann noch konvertiert werden weil getdate() auch die aktuele Zeit liefert,. Teste mal
AND doc.erstdat = to_date(getdate()-1)
Member: em-pie
em-pie Apr 30, 2021 updated at 12:14:33 (UTC)
Goto Top
Moin,

also wenn ich mal im WWW so suche, kann ORACLE das wie folgt:
SELECT 
 SYSDATE - 1
FROM DUAL;
Entscheidend ist Zeile 2. Oracle zieht hier scheinbar dann grundsätzlich immer Tage ab.
https://community.oracle.com/tech/developers/discussion/58184/add-days-f ...

In deinem Fall müsste es also wie folgt aussehen:
WHERE psn.psn_ogs_id = org.id
AND doc.erstdat = (SYSDATE - 1)
ORDER BY doc.psn_id

Gruß
em-pie