Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: Databricks SQL
Databricks Runtime
Extrahiert einen Teil des Datums, Zeitstempels oder Intervalls
Syntax
date_part(fieldStr, expr)
Argumente
fieldStr
: EinSTRING
-Literal.expr
: EinDATE
-,TIMESTAMP
- oderINTERVAL
-Ausdruck.
Rückgabe
Wenn fieldStr
'SECOND'
ist, einen Wert vom Typ DECIMAL(8, 6)
.
In allen anderen Fällen eine INTEGER
.
Unterstützte Werte von field
, wenn source
DATE
oder TIMESTAMP
ist:
'YEAR'
,'Y'
,'YEARS'
,'YR'
,'YRS'
: Das Jahresfeld'YEAROFWEEK'
: Das Jahr der ISO 8601-Wochennummerierung, in das das Datum fällt. Beispielsweise ist die Angabe „2005-01-02“ Teil der 53. Woche des Jahres 2004, sodass das Ergebnis 2004 ist.'QUARTER'
,'QTR'
: Das Quartal (1 bis 4) des Jahres, in das das Datum und die Uhrzeit fallen.'MONTH'
,'MON'
,'MONS'
,'MONTHS'
: Das Monatsfeld (1 bis 12)'WEEK'
,'W'
,'WEEKS'
: Die Wochennummer des ISO 8601-wochenbasierten Kalenders. Eine Woche beginnt an einem Montag, und Woche 1 ist die erste Woche mit 3 Tagen. Im ISO-Wochennummerierungssystem ist es möglich, dass eine Datumsangabe Anfang Januar Teil der 52. oder 53. Woche des vorherigen Jahres ist, während Datumsangaben Ende Dezember in der ersten Woche des nächsten Jahres liegen können. Beispielsweise ist die Angabe „2005-01-02“ Teil der 53. Woche des Jahres 2004, während „2012-12-31“ Teil der ersten Woche des Jahres 2013 ist.'DAY'
,'D'
,'DAYS'
: Der Tag des Monatsfelds (1 bis 31)'DAYOFWEEK'
,'DOW'
: Der Wochentag von „datetime“ mit Sonntag (1) bis Samstag (7)'DAYOFWEEK_ISO'
,'DOW_ISO'
: Der Wochentag von „datetime“ nach ISO 8601 mit Montag (1) bis Sonntag (7)'DOY'
: Der Tag des Jahres (1 bis 365/366)'HOUR'
,'H'
,'HOURS'
,'HR'
,'HRS'
: Das Stundenfeld (0 bis 23)'MINUTE'
,'M'
,'MIN'
,'MINS'
,'MINUTES'
: Das Minutenfeld (0 bis 59)'SECOND'
,'S'
,'SEC'
,'SECONDS'
,'SECS'
: Das Sekundenfeld einschließlich Bruchteilen
Unterstützte Werte von field
, wenn source
INTERVAL
ist (ohne Berücksichtigung der Groß-/Kleinschreibung):
'YEAR'
,'Y'
,'YEARS'
,'YR'
,'YRS'
: Die Gesamtzahl der Monate / 12'MONTH'
,'MON'
,'MONS'
,'MONTHS'
: Die Gesamtzahl der Monate % 12'DAY'
,'D'
,'DAYS'
: Der Tagesanteil des Intervalls'HOUR'
,'H'
,'HOURS'
,'HR'
,'HRS'
: Wie viele Stunden die Mikrosekunden enthalten'MINUTE'
,'M'
,'MIN'
,'MINS'
,'MINUTES'
: Anzahl an übrigen Minuten nach Abzug der Stunden von den Mikrosekunden'SECOND'
,'S'
,'SEC'
,'SECONDS'
,'SECS'
: Anzahl der verbleibenden Sekunden einschließlich Nachkommastellen nach Abzug der Stunden und Minuten von den Mikrosekunden
Die Funktion date_part
ist ein Synonym für die SQL-Standardfunktion extract.
Zum Beispiel ist date_part('year', CURRENT_DATE)
äquivalent zu extract(YEAR FROM CURRENT_DATE)
Beispiele
> SELECT date_part('YEAR', TIMESTAMP'2019-08-12 01:00:00.123456');
2019
> SELECT date_part('Week', TIMESTAMP'2019-08-12 01:00:00.123456');
33
> SELECT date_part('day', DATE'2019-08-12');
12
> SELECT date_part('SECONDS', TIMESTAMP'2019-10-01 00:00:01.000001');
1.000001
> SELECT date_part('Months', INTERVAL '2-11' YEAR TO MONTH);
11
> SELECT date_part('seconds', INTERVAL '5:00:30.001' HOUR TO SECOND);
30.001000