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

Funktionsweise von date_part() in PostgreSQL

In PostgreSQL der date_part() Die Funktion ruft Unterfelder wie Jahr, Monat, Stunde oder Minute ab, die Teil eines Datums-/Uhrzeitwerts sind.

Es entspricht dem extract() Funktion, allerdings mit etwas anderer Syntax.

Syntax

Die Funktion hat folgende Syntax:

date_part('field', source)

Wo:

  • 'field' ist für den Datumsteil, den Sie abrufen möchten. Dieser Parameter muss ein Zeichenfolgenwert sein, kein Name. Unten finden Sie eine Liste gültiger Feldnamen.
  • source ist ein Zeitstempel oder ein Intervall aus der Sie den Datumsteil abrufen möchten.

Beispiel – Zeitstempel

Hier ist ein einfaches Beispiel, um zu demonstrieren, wie ein Feld aus einem Zeitstempel abgerufen wird .

SELECT date_part('hour', timestamp '2020-09-16 22:33:15');

Ergebnis:

22

Dieses Beispiel ruft das Stundenfeld aus einem Zeitstempel ab Wert.

Hier ist es wieder, aber dieses Mal rufe ich das Jahresfeld ab.

SELECT date_part('year', timestamp '2020-09-16 22:33:15');

Ergebnis:

2020

Beispiel – Intervall

In diesem Beispiel rufe ich einen Datumsteil aus einem Intervall ab Wert.

SELECT date_part('hour', interval '5 hours 30 minutes');

Ergebnis:

5

Im nächsten Beispiel gibt die Funktion die Anzahl der Stunden korrekt zurück, obwohl ich nur die Anzahl der Minuten angebe.

SELECT date_part('hour', interval '120 minutes');

Ergebnis:

2

Verlassen Sie sich jedoch nicht auf diese Technik. Sie werden möglicherweise feststellen, dass Sie nicht immer das erwartete Ergebnis erhalten.

Zum Beispiel:

SELECT date_part('hour', interval '100 minutes');

Ergebnis:

1

Und noch eins:

SELECT date_part('minute', interval '2 hours');

Ergebnis:

0

Feldnamen

Das erste Argument kann eines der folgenden sein:

  • century
  • day
  • decade
  • dow
  • doy
  • epoch
  • hour
  • isodow
  • isoyear
  • microseconds
  • millennium
  • milliseconds
  • minute
  • month
  • quarter
  • second
  • timezone
  • timezone_hour
  • timezone_minute
  • week
  • year