SQL: Anzahl eines Wochentags im Jahr ermitteln

Aus DBWiki
Wechseln zu: Navigation, Suche

Zurück zur Übersicht



Mittels Pivottabelle kann man alle Tage eines Jahres abbilden, durch Filterung auf einen Wochentag reduzieren, und darüber die Anzahl ermitteln.


Es soll z. B. die Anzahl der Montage in 2018 ermittelt werden.

Lösung für Jet-SQL

Hinweis für Access-Anwender
Um die folgende Abfrage selbst testen zu können, muss die Pivottabelle t1000 vorhanden sein.

SELECT Count(*) AS montage_in_2018
FROM   t1000
WHERE  #2018-01-01# + n < #2019-01-01# AND
       Weekday( #2018-01-01# + n, 2 ) = 1

Lösung für PostgreSQL

SELECT COUNT( * ) AS montage_in_2018
FROM   generate_series( '2018-01-01', '2018-12-31', INTERVAL '1 day' ) AS dt
WHERE  EXTRACT( 'ISODOW' FROM dt ) = 1

Beide Abfragen liefern 53 als Ergebnis.



Zurück zur Übersicht