Ich habe einen Tisch mit allen Einkäufen meiner Kunden. Ich möchte alle Einträge der letzten Woche auswählen (Wochenbeginn ab Sonntag).
%Vor%Ich habe es versucht:
%Vor%Aber ich habe die Daten der letzten Woche einschließlich der Daten dieser Woche, ich möchte nur Daten aus der letzten Woche.
Wie bekomme ich nur Daten von letzter Woche?
Diese Bedingung wird Datensätze von Sonntag bis Samstag letzte Woche zurückgeben:
%Vor%Es gibt ein Beispiel:
%Vor%In Antwort auf @ d456:
Würde
BETWEEN
keine Mitternacht am Sonntag an beiden Enden des Intervalls verwenden?
Dieses Recht, BETWEEN
enthält Mitternacht am Sonntag an beiden Enden des Intervalls. Um Mitternacht am Sonntag am Ende des Intervalls auszuschließen, müssen die Operatoren >=
und <
:
Postgres startet standardmäßig Wochen an einem Sonntag, also haben Sie Glück. Sie können date_trunc()
verwenden, um den Anfang der vorherigen Woche zu erhalten:
BEARBEITEN:
Postgres startet standardmäßig die Woche für date_trunc am Montag, aber für Sonntag. Also können Sie tun, was Sie wollen, indem Sie diese Logik verwenden, die Nicolai in seiner Antwort hat.
Tags und Links sql postgresql