PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Extrahieren Sie das Jahr aus einem Datum in PostgreSQL

In PostgreSQL können Sie den extract() verwenden Funktion, um das Jahr aus einem Datum zu erhalten.

Sie können auch date_part() verwenden Funktion dasselbe tun.

Beispiel 1:Die Extract()-Funktion

Hier ist ein Beispiel für die Verwendung von extract() Funktion zum Extrahieren des Jahres aus einem Datum.

SELECT extract(
    year from date '1974-12-16'
    ) AS "Year";

Ergebnis:

 Year 
------
 1974

Hier ist ein weiteres Beispiel mit dem aktuellen Zeitstempel.

SELECT extract(
    year from current_timestamp
    ) AS "Year";

Ergebnis:

 Year 
------
 2020

Beispiel 2:Die Funktion date_part()

Hier ist ein Beispiel für die Verwendung von date_part() stattdessen funktionieren.

SELECT date_part(
    'year', date '1974-12-16'
    ) AS "Year";

Ergebnis:

 Year 
------
 1974

Beachten Sie die etwas andere Syntax. Auch das 'year' Parameter muss ein Zeichenfolgenwert sein (d. h. er ist in einfache Anführungszeichen eingeschlossen).

Beispiel 3:ISO-Jahr

Sie haben die Möglichkeit, das Jahr für die Wochennummerierung nach ISO 8601 anzugeben.

Jedes Jahr mit Wochennummerierung nach ISO 8601 beginnt mit dem Montag der Woche, die den 4. Januar enthält, sodass Anfang Januar oder Ende Dezember das ISO-Jahr vom gregorianischen Jahr abweichen kann (abhängig vom betreffenden Jahr).

Hier ist ein Beispiel, das dies demonstriert.

SELECT 
  extract(
    isoyear from date '2024-12-29'
    ) AS "2024-12-29",
  extract(
    isoyear from date '2024-12-30'
    ) AS "2024-12-30";  

Ergebnis:

 2024-12-29 | 2024-12-30 
------------+------------
       2024 |       2025

Beide Daten fallen also unter 2024 im gregorianischen Kalender, aber sie fallen unter ein anderes ISO-Jahr.

Der date_part() Die Funktion akzeptiert auch 'isoyear' als Argument.