Datums- und Zeitfunktionen in SQL: Unterschied zwischen den Versionen
| Zeile 32: | Zeile 32: | ||
== Extraktion einzelner Komponenten == | == Extraktion einzelner Komponenten == | ||
SQL bietet Funktionen, mit denen '''einzelne Bestandteile von Datums- und Zeitwerten''' gezielt ausgelesen werden können. | [[SQL]] bietet Funktionen, mit denen '''einzelne Bestandteile von Datums- und Zeitwerten''' gezielt ausgelesen werden können. | ||
Diese Funktionen sind besonders nützlich für Filterbedingungen, Gruppierungen und Auswertungen, z. B. nach Jahr, Monat oder Uhrzeit. | Diese Funktionen sind besonders nützlich für Filterbedingungen, Gruppierungen und Auswertungen, z. B. nach Jahr, Monat oder Uhrzeit. | ||
Version vom 11. Januar 2026, 11:29 Uhr
Diese Funktionen werden verwendet, um Datums- und Zeitwerte zu extrahieren, zu formatieren oder zu manipulieren.
Grundfunktionen
SQL stellt spezielle Funktionen zur Verarbeitung von Datums- und Zeitwerten bereit. Mit diesen Funktionen lassen sich Datum und Uhrzeit aus Zeitstempeln extrahieren oder das aktuelle Systemdatum bzw. die aktuelle Uhrzeit ermitteln. Sie werden häufig für Filter, Berechnungen und Auswertungen verwendet (z. B. bei Logdaten oder Bestellungen).
| Funktion | Beschreibung |
|---|---|
DATE('2025-06-06 15:30:00') |
Gibt nur das Datum zurück |
TIME('2025-06-06 15:30:00') |
Gibt nur die Uhrzeit zurück |
DATETIME() |
Gibt aktuelles Datum und Uhrzeit zurück |
Beispiele
Die folgenden Beispiele zeigen die Rückgabewerte der Funktionen:
| Beispiel | Ergebnis |
|---|---|
DATE('2025-06-06 15:30:00') |
2025-06-06 |
TIME('2025-06-06 15:30:00') |
15:30:00 |
DATETIME() |
2025-06-06 15:30:00 |
Extraktion einzelner Komponenten
SQL bietet Funktionen, mit denen einzelne Bestandteile von Datums- und Zeitwerten gezielt ausgelesen werden können. Diese Funktionen sind besonders nützlich für Filterbedingungen, Gruppierungen und Auswertungen, z. B. nach Jahr, Monat oder Uhrzeit.
| Funktion | Beschreibung |
|---|---|
YEAR('2025-06-06') |
Extrahiert das Jahr |
MONTH('2025-06-07') |
Extrahiert den Monat |
DAY('2025-06-07') |
Extrahiert den Tag |
HOUR('2025-06-06 15:30:00') |
Extrahiert die Stunde |
MINUTE('2025-06-06 15:30:00') |
Extrahiert die Minute |
SECOND('2025-06-06 15:30:45') |
Extrahiert die Sekunde |
Beispiele
Die folgenden Beispiele zeigen typische Rückgabewerte der Funktionen:
| Beispiel | Ergebnis |
|---|---|
YEAR('2025-06-06') |
2025 |
MONTH('2025-06-07') |
6 |
DAY('2025-06-07') |
7 |
HOUR('2025-06-06 15:30:00') |
15 |
MINUTE('2025-06-06 15:30:00') |
30 |
SECOND('2025-06-06 15:30:45') |
45 |
Extraktion einzelner Komponenten
| Funktion | Beschreibung |
|---|---|
YEAR('2025-06-06') |
Extrahiert das Jahr |
MONTH('2025-06-07') |
Extrahiert den Monat |
DAY('2025-06-07') |
Extrahiert den Tag |
HOUR('2025-06-06 15:30:00') |
Extrahiert die Stunde |
MINUTE('2025-06-06 15:30:00') |
Extrahiert die Minute |
SECOND('2025-06-06 15:30:45') |
Extrahiert die Sekunde |
| Beispiel | Ergebnis |
|---|---|
YEAR('2025-06-06') |
2025 |
MONTH('2025-06-07') |
6 |
DAY('2025-06-07') |
7 |
HOUR('2025-06-06 15:30:00') |
15 |
MINUTE('2025-06-06 15:30:00') |
30 |
SECOND('2025-06-06 15:30:45') |
45 |
Aktuelles Datum/Zeit
| Funktion | Beschreibung |
|---|---|
NOW() |
Gibt das aktuelle Datum und die aktuelle Zeit zurück |
CURDATE() |
Gibt das aktuelle Datum zurück |
CURTIME() |
Gibt die aktuelle Uhrzeit zurück |
| Beispiel | Ergebnis |
|---|---|
NOW() |
2025-06-06 15:30:00 |
CURDATE() |
2025-06-06 |
CURTIME() |
15:30:00 |
Zusatzfunktionen
| Funktion | Beschreibung |
|---|---|
DATE_ADD('2025-06-06', INTERVAL 7 DAY) |
Fügt 7 Tage hinzu |
DATE_SUB('2025-06-06', INTERVAL 1 MONTH) |
Subtrahiert 1 Monat |
DATEDIFF('2025-06-10', '2025-06-06') |
Differenz in Tagen |
| Beispiel | Ergebnis |
|---|---|
DATE_ADD('2025-06-06', INTERVAL 7 DAY) |
2025-06-13 |
DATE_SUB('2025-06-06', INTERVAL 1 MONTH) |
2025-05-06 |
DATEDIFF('2025-06-10', '2025-06-06') |
4 |
Testen
Query:
SELECT NOW(), CURDATE(), CURTIME();
Ergebnis:
| NOW() | CURDATE() | CURTIME() |
|---|---|---|
| 2025-06-06 15:30:00 | 2025-06-06 | 15:30:00 |
Query:
SELECT DATE('2025-06-06 15:30:00'), TIME('2025-06-06 15:30:00');
Ergebnis:
| DATE('2025-06-06 15:30:00') | TIME('2025-06-06 15:30:00') |
|---|---|
| 2025-06-06 | 15:30:00 |
Query:
SELECT YEAR('2025-06-07'), MONTH('2025-06-07'), DAY('2025-06-07');
Ergebnis:
| YEAR('2025-06-07') | MONTH('2025-06-07') | DAY('2025-06-07') |
|---|---|---|
| 2025 | 6 | 7 |
