Datums- und Zeitfunktionen in SQL: Unterschied zwischen den Versionen

Aus FI-Wiki
Zeile 74: Zeile 74:
! Beispiel !! Ergebnis
! Beispiel !! Ergebnis
|-
|-
| <code>NOW()</code> || <code>2025-06-06 15:30:00</code>
| <code>NOW()</code> || 2025-06-06 15:30:00
|-
|-
| <code>CURDATE()</code> || <code>2025-06-06</code>
| <code>CURDATE()</code> || 2025-06-06
|-
|-
| <code>CURTIME()</code> || <code>15:30:00</code>
| <code>CURTIME()</code> || 15:30:00
|}
|}



Version vom 6. Juni 2025, 10:47 Uhr

Datums- und Zeitfunktionen in SQL

Diese Funktionen werden verwendet, um Datums- und Zeitwerte zu extrahieren, zu formatieren oder zu manipulieren.

Grundfunktionen

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 Datum und Uhrzeit zurück
Beispiel Ergebnis
DATE('2025-06-06 15:30:00') 2025-06-06
TIME('2025-06-06 15:30:00') 15:30:00
SELECT DATETIME() 2025-06-06 15:30:00

Extraktion einzelner Komponenten

Funktion Beschreibung
YEAR('2025-06-06') Extrahiert das Jahr
MONTH('2025-06-06') Extrahiert den Monat
DAY('2025-06-06') 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-06') 6
DAY('2025-06-06') 6
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

SELECT NOW(), CURDATE(), CURTIME();
NOW() CURDATE() CURTIME()
2025-06-06 15:30:00 2025-06-06 15:30:00
SELECT DATE('2025-06-06 15:30:00'), TIME('2025-06-06 15:30:00');
DATE('2025-06-06 15:30:00') TIME('2025-06-06 15:30:00')
2025-06-06 15:30:00
SELECT YEAR('2025-06-06'), MONTH('2025-06-06'), DAY('2025-06-06');
YEAR('2025-06-06') MONTH('2025-06-06') DAY('2025-06-06')
2025 6 6