Datums- und Zeitfunktionen in SQL: Unterschied zwischen den Versionen

Aus FI-Wiki
Keine Bearbeitungszusammenfassung
 
(10 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
Diese Funktionen werden verwendet, um Datums- und Zeitwerte zu extrahieren, zu formatieren oder zu manipulieren.
Datums- und Zeitfunktionen in [[SQL]] werden verwendet, um Datums- und Zeitwerte zu erzeugen, zu verändern, zu vergleichen oder einzelne Bestandteile wie Jahr, Monat oder Uhrzeit zu extrahieren.


== Grundfunktionen ==
== Grundfunktionen ==


SQL stellt spezielle Funktionen zur Verarbeitung von '''Datums- und Zeitwerten''' bereit.   
[[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.   
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).
Sie werden häufig für Filter, Berechnungen und Auswertungen verwendet (z. B. bei Logdaten oder Bestellungen).
Zeile 30: Zeile 30:
|}
|}


== Extraktion einzelner Komponenten ==


== 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.


{| class="wikitable"
{| class="wikitable"
Zeile 48: Zeile 50:
| <code>SECOND('2025-06-06 15:30:45')</code> || Extrahiert die Sekunde
| <code>SECOND('2025-06-06 15:30:45')</code> || Extrahiert die Sekunde
|}
|}
=== Beispiele ===
Die folgenden Beispiele zeigen typische Rückgabewerte der Funktionen:


{| class="wikitable"
{| class="wikitable"
Zeile 65: Zeile 70:
|}
|}


== Aktuelles Datum/Zeit ==
== Aktuelles Datum / Zeit ==
 
SQL stellt spezielle Funktionen bereit, um das '''aktuelle Datum und die aktuelle Uhrzeit''' des Datenbankservers abzufragen. 
Diese Funktionen werden häufig für Zeitstempel, Protokolle, Vergleiche oder zeitabhängige Abfragen verwendet.


{| class="wikitable"
{| class="wikitable"
Zeile 76: Zeile 84:
| <code>CURTIME()</code> || Gibt die aktuelle Uhrzeit zurück
| <code>CURTIME()</code> || Gibt die aktuelle Uhrzeit zurück
|}
|}
=== Beispiele ===
Die folgenden Beispiele zeigen typische Rückgabewerte der Funktionen:


{| class="wikitable"
{| class="wikitable"
Zeile 88: Zeile 99:


== Zusatzfunktionen ==
== Zusatzfunktionen ==
Neben den Grundfunktionen stellt SQL weitere Funktionen zur Verfügung, um '''Datumswerte zu verändern oder Zeitabstände zu berechnen'''. 
Diese Funktionen werden häufig für Fristen, Laufzeiten, Altersberechnungen oder zeitliche Auswertungen verwendet.


{| class="wikitable"
{| class="wikitable"
! Funktion !! Beschreibung
! 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> || Fügt 7 Tage zum Datum hinzu
|-
|-
| <code>DATE_SUB('2025-06-06', INTERVAL 1 MONTH)</code> || Subtrahiert 1 Monat
| <code>DATE_SUB('2025-06-06', INTERVAL 1 MONTH)</code> || Zieht 1 Monat vom Datum ab
|-
|-
| <code>DATEDIFF('2025-06-10', '2025-06-06')</code> || Differenz in Tagen
| <code>DATEDIFF('2025-06-10', '2025-06-06')</code> || Berechnet die Differenz in Tagen
|}
|}
=== Beispiele ===
Die folgenden Beispiele zeigen typische Rückgabewerte der Zusatzfunktionen:


{| class="wikitable"
{| class="wikitable"
Zeile 111: Zeile 128:
== Testen ==
== Testen ==


''' Query: '''
In diesem Abschnitt werden typische '''SQL-Abfragen zu Datums- und Zeitfunktionen''' ausgeführt und deren Rückgabewerte überprüft. 
So lässt sich nachvollziehen, welche Werte die einzelnen Funktionen liefern.
 
=== Aktuelles Datum und Uhrzeit ===
'''Query:'''
<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">
SELECT NOW(), CURDATE(), CURTIME();
SELECT NOW(), CURDATE(), CURTIME();
</syntaxhighlight>
</syntaxhighlight>
''' Ergebnis: '''
 
'''Ergebnis:'''
{| class="wikitable"
{| class="wikitable"
! NOW() !! CURDATE() !! CURTIME()
! NOW() !! CURDATE() !! CURTIME()
Zeile 122: Zeile 144:
|}
|}


 
=== Datum und Uhrzeit trennen ===
''' Query: '''
'''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: '''
 
'''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 134: Zeile 157:
|}
|}


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


[[Kategorie:Datenbanken]]
[[Kategorie:Datenbanken]]
[[Kategorie:Semester1]]
[[Kategorie:Semester1]]

Aktuelle Version vom 11. Januar 2026, 11:45 Uhr

Datums- und Zeitfunktionen in SQL werden verwendet, um Datums- und Zeitwerte zu erzeugen, zu verändern, zu vergleichen oder einzelne Bestandteile wie Jahr, Monat oder Uhrzeit zu extrahieren.

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

Aktuelles Datum / Zeit

SQL stellt spezielle Funktionen bereit, um das aktuelle Datum und die aktuelle Uhrzeit des Datenbankservers abzufragen. Diese Funktionen werden häufig für Zeitstempel, Protokolle, Vergleiche oder zeitabhängige Abfragen verwendet.

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

Beispiele

Die folgenden Beispiele zeigen typische Rückgabewerte der Funktionen:

Beispiel Ergebnis
NOW() 2025-06-06 15:30:00
CURDATE() 2025-06-06
CURTIME() 15:30:00

Zusatzfunktionen

Neben den Grundfunktionen stellt SQL weitere Funktionen zur Verfügung, um Datumswerte zu verändern oder Zeitabstände zu berechnen. Diese Funktionen werden häufig für Fristen, Laufzeiten, Altersberechnungen oder zeitliche Auswertungen verwendet.

Funktion Beschreibung
DATE_ADD('2025-06-06', INTERVAL 7 DAY) Fügt 7 Tage zum Datum hinzu
DATE_SUB('2025-06-06', INTERVAL 1 MONTH) Zieht 1 Monat vom Datum ab
DATEDIFF('2025-06-10', '2025-06-06') Berechnet die Differenz in Tagen

Beispiele

Die folgenden Beispiele zeigen typische Rückgabewerte der Zusatzfunktionen:

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

In diesem Abschnitt werden typische SQL-Abfragen zu Datums- und Zeitfunktionen ausgeführt und deren Rückgabewerte überprüft. So lässt sich nachvollziehen, welche Werte die einzelnen Funktionen liefern.

Aktuelles Datum und Uhrzeit

Query:

SELECT NOW(), CURDATE(), CURTIME();

Ergebnis:

NOW() CURDATE() CURTIME()
2025-06-06 15:30:00 2025-06-06 15:30:00

Datum und Uhrzeit trennen

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

Einzelne Datumsbestandteile

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