Datums- und Zeitfunktionen in SQL: Unterschied zwischen den Versionen

Aus FI-Wiki
 
(14 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 18: Zeile 18:
! Beispiel !! Ergebnis
! Beispiel !! Ergebnis
|-
|-
| <code>DATE('2025-06-06 15:30:00')</code> || <code>2025-06-06</code>
| <code>DATE('2025-06-06 15:30:00')</code> || 2025-06-06
|-
|-
| <code>TIME('2025-06-06 15:30:00')</code> || <code>15:30:00</code>
| <code>TIME('2025-06-06 15:30:00')</code> || 15:30:00
|-
|-
| <code>SELECT DATETIME()</code> || <code>2025-06-06 15:30:00</code>
| <code>DATETIME()</code> || 2025-06-06 15:30:00
|}
|}


=== Extraktion einzelner Komponenten ===
=== Extraktion einzelner Komponenten ===
Zeile 33: Zeile 32:
| <code>YEAR('2025-06-06')</code> || Extrahiert das Jahr
| <code>YEAR('2025-06-06')</code> || Extrahiert das Jahr
|-
|-
| <code>MONTH('2025-06-06')</code> || Extrahiert den Monat
| <code>MONTH('2025-06-07')</code> || Extrahiert den Monat
|-
|-
| <code>DAY('2025-06-06')</code> || Extrahiert den Tag
| <code>DAY('2025-06-07')</code> || Extrahiert den Tag
|-
|-
| <code>HOUR('2025-06-06 15:30:00')</code> || Extrahiert die Stunde
| <code>HOUR('2025-06-06 15:30:00')</code> || Extrahiert die Stunde
Zeile 47: Zeile 46:
! Beispiel !! Ergebnis
! Beispiel !! Ergebnis
|-
|-
| <code>YEAR('2025-06-06')</code> || <code>2025</code>
| <code>YEAR('2025-06-06')</code> || 2025
|-
|-
| <code>MONTH('2025-06-06')</code> || <code>6</code>
| <code>MONTH('2025-06-07')</code> || 6
|-
|-
| <code>DAY('2025-06-06')</code> || <code>6</code>
| <code>DAY('2025-06-07')</code> || 7
|-
|-
| <code>HOUR('2025-06-06 15:30:00')</code> || <code>15</code>
| <code>HOUR('2025-06-06 15:30:00')</code> || 15
|-
|-
| <code>MINUTE('2025-06-06 15:30:00')</code> || <code>30</code>
| <code>MINUTE('2025-06-06 15:30:00')</code> || 30
|-
|-
| <code>SECOND('2025-06-06 15:30:45')</code> || <code>45</code>
| <code>SECOND('2025-06-06 15:30:45')</code> || 45
|}
|}


Zeile 63: Zeile 62:


{| class="wikitable"
{| class="wikitable"
! Funktion !! Beschreibung !! Beispiel !! Ergebnis
! Funktion !! Beschreibung
|-
| <code>NOW()</code> || Gibt das aktuelle Datum und die aktuelle Zeit zurück
|-
| <code>CURDATE()</code> || Gibt das aktuelle Datum zurück
|-
| <code>CURTIME()</code> || Gibt die aktuelle Uhrzeit zurück
|}
 
{| class="wikitable"
! Beispiel !! Ergebnis
|-
|-
| <code>NOW()</code> || Gibt das aktuelle Datum und die aktuelle Zeit zurück || <code>NOW()</code> || <code>2025-06-06 15:30:00</code>
| <code>NOW()</code> || 2025-06-06 15:30:00
|-
|-
| <code>CURDATE()</code> || Gibt das aktuelle Datum zurück || <code>CURDATE()</code> || <code>2025-06-06</code>
| <code>CURDATE()</code> || 2025-06-06
|-
|-
| <code>CURTIME()</code> || Gibt die aktuelle Uhrzeit zurück || <code>CURTIME()</code> || <code>15:30:00</code>
| <code>CURTIME()</code> || 15:30:00
|}
|}


Zeile 75: Zeile 84:


{| class="wikitable"
{| class="wikitable"
! Funktion !! Beschreibung !! Beispiel !! Ergebnis
! Funktion !! Beschreibung
|-
|-
| <code>DATE_ADD('2025-06-06', INTERVAL 7 DAY)</code> || Fügt 7 Tage hinzu || <code>DATE_ADD('2025-06-06', INTERVAL 7 DAY)</code> || <code>2025-06-13</code>
| <code>DATE_ADD('2025-06-06', INTERVAL 7 DAY)</code> || Fügt 7 Tage hinzu
|-
|-
| <code>DATE_SUB('2025-06-06', INTERVAL 1 MONTH)</code> || Subtrahiert 1 Monat || <code>DATE_SUB('2025-06-06', INTERVAL 1 MONTH)</code> || <code>2025-05-06</code>
| <code>DATE_SUB('2025-06-06', INTERVAL 1 MONTH)</code> || Subtrahiert 1 Monat
|-
|-
| <code>DATEDIFF('2025-06-10', '2025-06-06')</code> || Differenz in Tagen || <code>DATEDIFF('2025-06-10', '2025-06-06')</code> || <code>4</code>
| <code>DATEDIFF('2025-06-10', '2025-06-06')</code> || Differenz in Tagen
|}
 
{| class="wikitable"
! Beispiel !! Ergebnis
|-
| <code>DATE_ADD('2025-06-06', INTERVAL 7 DAY)</code> || 2025-06-13
|-
| <code>DATE_SUB('2025-06-06', INTERVAL 1 MONTH)</code> || 2025-05-06
|-
| <code>DATEDIFF('2025-06-10', '2025-06-06')</code> || 4
|}
|}


=== Testen ===
=== Testen ===


''' Query: '''
<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">
SELECT NOW(), CURDATE(), CURTIME();
SELECT NOW(), CURDATE(), CURTIME();
</syntaxhighlight>
</syntaxhighlight>
 
''' Ergebnis: '''
{| class="wikitable"
{| class="wikitable"
! NOW() !! CURDATE() !! CURTIME()
! NOW() !! CURDATE() !! CURTIME()
Zeile 96: Zeile 116:
|}
|}


''' Query: '''
<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">
SELECT DATE('2025-06-06 15:30:00'), TIME('2025-06-06 15:30:00');
SELECT DATE('2025-06-06 15:30:00'), TIME('2025-06-06 15:30:00');
</syntaxhighlight>
</syntaxhighlight>
 
''' Ergebnis: '''
{| class="wikitable"
{| class="wikitable"
! 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')
Zeile 106: Zeile 128:
|}
|}


''' Query: '''
<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">
SELECT YEAR('2025-06-06'), MONTH('2025-06-06'), DAY('2025-06-06');
SELECT YEAR('2025-06-07'), MONTH('2025-06-07'), DAY('2025-06-07');
</syntaxhighlight>
</syntaxhighlight>
 
''' Ergebnis: '''
{| class="wikitable"
{| class="wikitable"
! YEAR('2025-06-06') !! MONTH('2025-06-06') !! DAY('2025-06-06')
! YEAR('2025-06-07') !! MONTH('2025-06-07') !! DAY('2025-06-07')
|-
|-
| 2025 || 6 || 6
| 2025 || 6 || 7
|}
|}
[[Kategorie:Datenbanken]]
[[Kategorie:Semester1]]

Aktuelle Version vom 6. Juni 2025, 11:02 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
DATETIME() 2025-06-06 15:30:00

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