DATE_PART
Entsprechung in MySQL:
Gibt den angegebenen Teil eines Datums, einer Uhrzeit oder eines Intervalls zurück.
PostgreSQL 17.5
DATE_PART(field, source)Parameter
- fieldtext
- Name des Teils als String
- Werte:'century''day''decade''dow''doy''epoch''hour''isodow''isoyear''julian''microseconds''millennium''milliseconds''minute''month''quarter''second''timezone''timezone_hour''timezone_minute''week''year'
- sourcetimestamp | interval
- Datum, Uhrzeit oder Intervall
Rückgabewert
Gleitkommazahl (double precision), zum Beispiel 2023 für year
Beispiele
Jahr aus einem Datum
PostgreSQL 17.5
SELECT DATE_PART('year', TIMESTAMP '2023-01-01');Sonntag als Wochentag 0
PostgreSQL 17.5
SELECT DATE_PART('dow', DATE '2024-03-10');Anzahl der Zahlungen pro Quartal
PostgreSQL 17.5
SELECT DATE_PART('quarter', date) AS quarter,
COUNT(*) AS payments
FROM Payments
GROUP BY quarter
ORDER BY quarter;Details
Anders als EXTRACT, das numeric zurückgibt, kann DATE_PART Genauigkeit verlieren.
Wochentag: 'dow' gibt 0 für Sonntag und 6 für Samstag, 'isodow' geht von 1 für Montag bis 7 für Sonntag. DAYOFWEEK in MySQL zählt anders: Sonntag ist 1, Samstag ist 7.
'week' ist die ISO-Wochennummer: Eine Woche beginnt am Montag, und die ersten Januartage können zur letzten Woche des Vorjahres gehören. Deshalb verwendest du die Wochennummer zusammen mit 'isoyear', nicht mit 'year': Für 2021-01-01 ist die Woche 53 und das ISO-Jahr 2020.