logo

SQL-Datumsfunktionen

In diesem Tutorial lernen wir einige der wichtigen Datumsfunktionen kennen, die in SQL integriert sind.

Datumsfunktionen in SQL:

  1. JETZT()
  2. CURDATE()
  3. CURTIME()
  4. DATUM()
  5. EXTRAKT()
  6. DATE_ADD()
  7. DATE_SUB()
  8. DATEDIFF()
  9. DATUMSFORMAT()

Sehen wir uns die einzelnen Datumsfunktionen anhand von Beispielen einzeln im Detail an. Wir werden in Beispielen die MySQL-Datenbank zum Schreiben der Abfragen verwenden.

Stellen Sie sich vor, wir haben die Studententabelle mit den folgenden Daten:

AUSWEIS Name DateTime_Birth Stadt
1 Mansi Shah 01.01.2010 18:39:09 Pune
2 Tejal Wagh 04.03.2010 05:13:19 Nasik
3 Sejal Kumari 01.05.2010 10:31:07 Mumbai
4 Sonal Jain 09.09.2010 17:17:07 Shimla
5 Surili Maheshwari 10.07.2010 20:45:18 Brief

Wir werden diese Tabelle in einigen Beispielen verwenden.

1. JETZT():

Die Funktion NOW() in SQL gibt das Datum und die Uhrzeit des aktuellen Systems an.

Syntax:

 SELECT NOW (); 

Beispiel:

Schreiben Sie eine Abfrage, um Datum und Uhrzeit des aktuellen Systems anzuzeigen.

Abfrage:

 mysql> SELECT NOW () AS Current_Date_Time; 

Hier haben wir eine SELECT-Abfrage mit der Funktion NOW() geschrieben, um das aktuelle Datum und die aktuelle Uhrzeit des Systems abzurufen. Current_Date_Time ist ein Alias ​​zum Speichern von Datum und Uhrzeit.

Nachdem wir die obige Abfrage ausgeführt haben, haben wir die folgende Ausgabe erhalten:

Aktuelles_Datum_Uhrzeit
24.10.2021 18:28:44

Das Datum und die Uhrzeit, zu der die Abfrage im System ausgeführt wurde, sind 24ThOktober 2021 und 18:28:44. Daher wird es als Ausgabe angezeigt.

2. CURDATE()

Die Funktion CURDATE() in SQL gibt das aktuelle Systemdatum an.

wenn sonst in der Bash-Shell

Syntax:

 SELECT CURDATE (); 

Beispiel:

Schreiben Sie eine Abfrage, um das aktuelle Systemdatum anzuzeigen.

Abfrage:

 mysql> SELECT CURDATE () AS CurrentDate; 

Hier haben wir eine SELECT-Abfrage mit der Funktion CURDATE() geschrieben, um das aktuelle Datum des Systems abzurufen. CurrentDate ist ein Alias ​​zum Speichern des Datums.

Nachdem wir die obige Abfrage ausgeführt haben, haben wir die folgende Ausgabe erhalten:

Aktuelles Datum
24.10.2021

Das Datum, an dem die Abfrage im System ausgeführt wurde, ist der 24ThOktober 2021. Daher wird es als Ausgabe angezeigt.

3. CURTIME()

Die Funktion CURTIME() in SQL gibt die aktuelle Systemzeit an.

Syntax:

 SELECT CURTIME (); 

Beispiel:

Schreiben Sie eine Abfrage, um die aktuelle Systemzeit anzuzeigen.

Abfrage:

 mysql> SELECT CURTIME () AS CurrentTime; 

Hier haben wir eine SELECT-Abfrage mit der Funktion CURTIME() geschrieben, um die aktuelle Zeit des Systems abzurufen. CurrentTime ist ein Alias ​​zum Speichern der Uhrzeit.

Nachdem wir die obige Abfrage ausgeführt haben, haben wir die folgende Ausgabe erhalten:

Aktuelle Uhrzeit
18:49:07

Der Zeitpunkt, zu dem die Abfrage im System ausgeführt wurde, ist 18:49:07. Daher wird es als Ausgabe angezeigt.

4. DATUM()

Mit der Funktion DATE() in SQL können Sie das Datum gezielt aus der Datentypspalte DATETIME extrahieren.

Syntax:

 SELECT DATE (DateTimeValue); 

Beispiel 1:

Schreiben Sie eine Abfrage, um das Datum ab dem angegebenen Datum und der angegebenen Uhrzeit anzuzeigen, z. B. 24.10.2021 18:28:44.

Abfrage:

 mysql> SELECT DATE ('2021-10-24 18:28:44') AS SHOW_DATE; 

Hier haben wir eine SELECT-Abfrage mit der Funktion DATE() geschrieben, um nur das Datum aus dem an die Funktion DATE() übergebenen Datums- und Uhrzeitparameter abzurufen. SHOW_DATE ist ein Alias ​​zum Speichern des Datums.

Nachdem wir die obige Abfrage ausgeführt haben, haben wir die folgende Ausgabe erhalten:

SHOW_DATE
24.10.2021

Aus dem Datums- und Zeitparameter, d. h. „24.10.2021 18:28:44“, lautet der Datumswert 24.10.2021. Daher wird es als Ausgabe angezeigt.

Beispiel 2:

Schreiben Sie eine Abfrage, um alle Details aus der Schülertabelle mit dem Datum aus der Spalte „DateTime_Birth“ der Schülertabelle anzuzeigen.

Abfrage:

 mysql> SELECT ID, Name, DATE(DateTime_Birth) AS Date_of_Birth, City FROM student; 

Hier haben wir eine SELECT-Abfrage geschrieben, um die ID und den Namen abzurufen. Date_of_Birth ist ein Alias ​​für DateTime_Birth. Wir haben Date_of_Birth mit der Funktion DATE() verwendet, um nur das Datum zu erhalten.

Nachdem wir die obige Abfrage ausgeführt haben, haben wir die folgende Ausgabe erhalten:

AUSWEIS Name Geburtsdatum Stadt
1 Mansi Shah 01.01.2010 Pune
2 Tejal Wagh 04.03.2010 Nasik
3 Sejal Kumari 01.05.2010 Mumbai
4 Sonal Jain 09.09.2010 Shimla
5 Surili Maheshwari 10.07.2010 Brief

Alle Datensätze werden so angezeigt, wie sie aus der Schülertabelle stammen, mit Ausnahme der Spalte „DateTime_Birth“. Gemäß der Anforderung wird in der Spalte „Date_of_Birth“ nur das Datum angezeigt.

5. EXTRACT()

Mit der Funktion EXTRACT() in SQL können wir einen bestimmten Teil von Datum und Uhrzeit entsprechend unseren Anforderungen extrahieren: Tag, Monat, Jahr, Tag, Stunde, Minute usw.

Syntax:

Java MVC
 SELECT EXTRACT (PART FROM DATE / TIME); 

Beispiel 1:

Schreiben Sie eine Abfrage, um das Jahr ab dem angegebenen Datum anzuzeigen, also 24ThOktober 2021.

Abfrage:

 mysql> SELECT EXTRACT (YEAR FROM '2021-10-24') AS SHOW_YEAR; 

Hier haben wir eine SELECT-Abfrage mit der Funktion EXTRACT() geschrieben, um das Jahr aus dem angegebenen Datum abzurufen. SHOW_YEAR ist ein Alias ​​zum Speichern des Jahres.

Nachdem wir die obige Abfrage ausgeführt haben, haben wir die folgende Ausgabe erhalten:

SHOW_YEAR
2021

„2021“ ist das Jahr des angegebenen Datums. Daher wird es als Ausgabe angezeigt.

Beispiel 2:

Schreiben Sie eine Abfrage, um den Monat ab dem angegebenen Datum anzuzeigen, also 24ThOktober 2021.

Abfrage:

 mysql> SELECT EXTRACT (MONTH FROM '2021-10-24') AS SHOW_MONTH; 

Hier haben wir eine SELECT-Abfrage mit der Funktion EXTRACT() geschrieben, um den Monat aus dem angegebenen Datum abzurufen. SHOW_MONTH ist ein Alias ​​zum Speichern des Monats.

Nachdem wir die obige Abfrage ausgeführt haben, haben wir die folgende Ausgabe erhalten:

SHOW_MONTH
10

10Thist der Monatswert am angegebenen Datum. Daher wird es als Ausgabe angezeigt.

Beispiel 3:

Schreiben Sie eine Abfrage, um den Tag ab dem angegebenen Datum anzuzeigen, d. h. 24ThOktober 2021.

Abfrage:

 mysql> SELECT EXTRACT (DAY FROM '2021-10-24') AS SHOW_DAY; 

Hier haben wir eine SELECT-Abfrage mit der Funktion EXTRACT() geschrieben, um den Tag aus dem angegebenen Datum abzurufen. SHOW_DAY ist ein Alias ​​zum Speichern des Tages.

Nachdem wir die obige Abfrage ausgeführt haben, haben wir die folgende Ausgabe erhalten:

AUSSTELLUNGSTAG
24

24Thist der Tageswert am angegebenen Datum. Daher wird es als Ausgabe angezeigt.

Beispiel 4:

Schreiben Sie eine Abfrage, um die Stunde ab der angegebenen Zeit anzuzeigen, d. h. 19:10:43.

Abfrage:

 mysql> SELECT EXTRACT (HOUR FROM '19:10:43') AS SHOW_HOUR; 

Hier haben wir eine SELECT-Abfrage mit der Funktion EXTRACT() geschrieben, um die Stunde aus der angegebenen Zeit abzurufen. SHOW_HOUR ist ein Alias ​​zum Speichern des Werts einer Stunde.

Nachdem wir die obige Abfrage ausgeführt haben, haben wir die folgende Ausgabe erhalten:

SHOW_HOUR
19

„19“ ist der Stundenwert in der angegebenen Zeit. Daher wird es als Ausgabe angezeigt.

Beispiel 5:

Schreiben Sie eine Abfrage, um die Minute ab der angegebenen Zeit anzuzeigen, z. B. 19:10:43.

Abfrage:

 mysql> SELECT EXTRACT (MINUTE FROM '19:10:43') AS SHOW_MINUTE; 

Hier haben wir eine SELECT-Abfrage mit der Funktion EXTRACT() geschrieben, um den Minutenwert aus der angegebenen Zeit zu erhalten. SHOW_MINUTE ist ein Alias ​​zum Speichern der Minute.

Nachdem wir die obige Abfrage ausgeführt haben, haben wir die folgende Ausgabe erhalten:

SHOW_MINUTE
10

„10“ ist der Minutenwert in der angegebenen Zeit. Daher wird es als Ausgabe angezeigt.

Beispiel 6:

wie man char in string umwandelt

Schreiben Sie eine Abfrage, um die Sekunden ab der angegebenen Zeit anzuzeigen, z. B. 19:10:43.

Abfrage:

 mysql> SELECT EXTRACT (SECOND FROM '19:10:43') AS SHOW_SECOND; 

Hier haben wir eine SELECT-Abfrage mit der Funktion EXTRACT() geschrieben, um den Sekundenwert aus der angegebenen Zeit zu erhalten. SHOW_SECOND ist ein Alias ​​zum Speichern des Werts einer Sekunde.

Nachdem wir die obige Abfrage ausgeführt haben, haben wir die folgende Ausgabe erhalten:

SHOW_SECOND
43

43 ist der zweite Wert in der angegebenen Zeit. Daher wird es als Ausgabe angezeigt.

6. DATE_ADD()

Mit der Funktion DATE_ADD() in SQL können wir dem angegebenen Datum ein bestimmtes Zeitintervall hinzufügen.

Syntax:

 SELECT DATE_ADD (DATE, INTERVAL VALUE Unit_to_be_added); 

Beispiel 1:

Schreiben Sie eine Abfrage, um dem angegebenen Datum ein Intervall von 15 Tagen hinzuzufügen, also 24ThOktober 2021.

Abfrage:

 mysql> SELECT DATE_ADD ('2021-10-24', INTERVAL 15 DAY) AS NEW_DATE; 

Hier haben wir eine SELECT-Abfrage mit der Funktion DATE_ADD() geschrieben, um dem angegebenen Datum ein Intervall von 15 Tagen hinzuzufügen. NEW_DATE ist ein Alias ​​zum Speichern des Werts eines neuen Datums.

Sie erhalten die folgende Ausgabe:

NEUES DATUM
08.11.2021

Nach dem Hinzufügen eines 15-Tage-Intervalls zum 24.10.2021 ist das neue Datum der 08.11.2021.

Beispiel 2:

Schreiben Sie eine Abfrage, um dem angegebenen Datum ein Intervall von 5 Monaten hinzuzufügen, also 24ThOktober 2021.

Abfrage:

 mysql> SELECT DATE_ADD ('2021-10-24', INTERVAL 5 MONTH) AS NEW_DATE; 

Hier haben wir eine SELECT-Abfrage mit der Funktion DATE_ADD() geschrieben, um dem angegebenen Datum ein Intervall von 5 Monaten hinzuzufügen. NEW_DATE ist ein Alias ​​zum Speichern des Werts eines neuen Datums.

Sie erhalten die folgende Ausgabe:

NEUES DATUM
24.03.2022

Nach dem Hinzufügen eines 5-Monats-Intervalls zum 24.10.2021 ist das neue Datum der 24.03.2022.

Beispiel 3:

Schreiben Sie eine Abfrage, um dem angegebenen Datum ein Intervall von 25 Jahren hinzuzufügen, also 24ThOktober 2021.

Abfrage:

 mysql> SELECT DATE_ADD ('2021-10-24', INTERVAL 25 YEAR) AS NEW_DATE; 

Hier haben wir eine SELECT-Abfrage mit der Funktion DATE_ADD() geschrieben, um dem angegebenen Datum ein Intervall von 25 Jahren hinzuzufügen. NEW_DATE ist ein Alias ​​zum Speichern des Werts eines neuen Datums.

Sie erhalten die folgende Ausgabe:

NEUES DATUM
24.10.2046

Nach dem Hinzufügen eines 25-Jahres-Intervalls zum 24.10.2021 ist das neue Datum der 24.10.2046.

7. DATE_SUB()

Mit der Funktion DATE_SUB() in SQL können wir ein bestimmtes Zeitintervall aus dem angegebenen Datum entfernen.

Syntax:

 SELECT DATE_SUB (DATE, INTERVAL VALUE Unit_to_be_subtracted); 

Beispiel 1:

Schreiben Sie eine Abfrage, um ein Intervall von 25 Jahren ab dem angegebenen Datum, also 24, zu entfernenThOktober 2021.

Abfrage:

 mysql> SELECT DATE_SUB('2021-10-24', INTERVAL 25 YEAR) AS NEW_DATE; 

Hier haben wir eine SELECT-Abfrage mit der Funktion DATE_SUB() geschrieben, um ein Intervall von 25 Jahren ab dem angegebenen Datum zu entfernen. NEW_DATE ist ein Alias ​​zum Speichern des Werts eines neuen Datums.

Sie erhalten die folgende Ausgabe:

NEUES DATUM
24.10.1996

Nachdem das 25-Jahres-Intervall vom 24.10.2021 entfernt wurde, ist das neue Datum der 24.10.1996.

Beispiel 2:

Schreiben Sie eine Abfrage, um ein Intervall von 5 Monaten ab dem angegebenen Datum, also 24, zu entfernenThOktober 2021.

Abfrage:

 mysql> SELECT DATE_SUB('2021-10-24', INTERVAL 5 MONTH) AS NEW_DATE; 

Hier haben wir eine SELECT-Abfrage mit der Funktion DATE_SUB() geschrieben, um ein Intervall von 5 Monaten vom angegebenen Datum zu entfernen. NEW_DATE ist ein Alias ​​zum Speichern des Werts eines neuen Datums.

Sie erhalten die folgende Ausgabe:

NEUES DATUM
24.05.2021

Nachdem das 5-Monats-Intervall vom 24.10.2021 entfernt wurde, ist das neue Datum der 24.05.2021.

Beispiel 3:

Schreiben Sie eine Abfrage, um ein Intervall von 15 Tagen ab dem angegebenen Datum zu entfernen, also 24ThOktober 2021.

Abfrage:

 mysql> SELECT DATE_SUB('2021-10-24', INTERVAL 15 DAY) AS NEW_DATE; 

Hier haben wir eine SELECT-Abfrage mit der Funktion DATE_SUB() geschrieben, um ein Intervall von 15 Tagen vom angegebenen Datum zu entfernen. NEW_DATE ist ein Alias ​​zum Speichern des Werts eines neuen Datums.

Sie erhalten die folgende Ausgabe:

NEUES DATUM
09.10.2021

Nachdem das 15-Tage-Intervall vom 24.10.2021 entfernt wurde, ist das neue Datum der 09.10.2021.

8. DATEDIFF()

Durch die Verwendung der Funktion DATEDIFF() in SQL erhalten wir die Anzahl der Tage, die zwischen den beiden angegebenen Daten liegen.

Syntax:

 SELECT DATEDIFF(Date1, Date2); 

Beispiel 1:

Schreiben Sie eine Abfrage, um die Differenz zwischen zwei gegebenen Daten zu berechnen, z. B. 24ThOktober 2021 und 9ThOktober 2021.

Frühlingsinitialisierung

Abfrage:

 mysql> SELECT DATEDIFF('2021-10-24', '2021-10-09') AS NEW_DATE; 

Hier haben wir eine SELECT-Abfrage mit der Funktion DATE_DIFF() geschrieben, um die Differenz zwischen den Daten 24.10.2021 und 09.10.2021 zu ermitteln. Number_of_Days ist ein Alias ​​zum Speichern der Differenz in Bezug auf die Anzahl der Tage.

Sie erhalten die folgende Ausgabe:

Anzahl der Tage
fünfzehn

Zwischen den Daten 24.10.2021 und 09.10.2021 besteht ein Unterschied von 15 Tagen.

Beispiel 2:

Schreiben Sie eine Abfrage, um die Differenz zwischen zwei gegebenen Daten zu berechnen, z. B. 5ThMai 2018 und 5ThMai 2008.

Abfrage:

 mysql> SELECT DATEDIFF ('2018-05-05', '2008-05-05') AS NEW_DATE; 

Hier haben wir eine SELECT-Abfrage mit der Funktion DATE_DIFF() geschrieben, um die Differenz zwischen den Daten 2018-05-05 und 2008-05-05 zu ermitteln. Number_of_Days ist ein Alias ​​zum Speichern der Differenz in Bezug auf die Anzahl der Tage.

Sie erhalten die folgende Ausgabe:

Anzahl der Tage
3652

Zwischen den Daten 05.05.2018 und 05.05.2008 besteht ein Unterschied von 3652 Tagen.

9. DATE_FORMAT()

Mit der Funktion DATE_FORMAT() in SQL können wir die datums- oder zeitbezogenen Informationen gut formatiert anzeigen.

Syntax der Verwendung einer DATE_FORMAT-Funktion für die Spalte einer Tabelle:

 SELECT DATE_FORMAT (ColumnName, Expression) FROM Table Name; 

ODER

Syntax zum Formatieren eines bestimmten Datums:

 SELECT DATE_FORMAT (Date, Expression); 

Beispiel 1:

Schreiben Sie eine Abfrage, um das angegebene Datum gut formatiert anzuzeigen, z. B. 24ThOktober 2021.

Abfrage:

 mysql> SELECT DATE_FORMAT ('2021-10-24', '%W %D %M %Y') AS Formatted_Date; 

Hier haben wir eine SELECT-Abfrage mit der Funktion DATE_FORMAT() geschrieben, um das Datum 24.10.2021 in formatierter Form abzurufen. Formatted_Date ist ein Alias ​​zum Speichern des formatierten Datums.

Java-Programmierung von Primzahlen

Sie erhalten die folgende Ausgabe:

Formatiertes_Datum
Sonntag, 24. Oktober 2021

Sonntag, der 24. Oktober 2021 ist das formatierte Datum für den 24.10.2021.

Beispiel 2:

Schreiben Sie eine Abfrage, um das angegebene Datum und die angegebene Uhrzeit gut formatiert anzuzeigen, z. B. 24ThOktober 2021 22:30:17.

Abfrage:

 mysql> SELECT DATE_FORMAT ('2021-10-24 22:30:17', '%W %D %M %Y %r') AS Formatted_DateTime; 

Hier haben wir eine SELECT-Abfrage mit der Funktion DATE_FORMAT() geschrieben, um Datum und Uhrzeit „24.10.2021 22:30:17“ in formatierter Form abzurufen. Formatted_DateTime ist ein Alias ​​zum Speichern des formatierten Datums und der formatierten Uhrzeit.

Sie erhalten die folgende Ausgabe:

Formatted_DateTime
Sonntag, 24. Oktober 2021, 22:30:17 Uhr

Sonntag, 24. Oktober 2021, 22:30:17 Uhr, ist das formatierte Datum und die formatierte Uhrzeit für den 24.10.2021, 22:30:17 Uhr.

Beispiel 3:

Schreiben Sie eine Abfrage, um alle Details aus der Spalte „Student“ mit der Spalte „DateTime_Birth“ gut formatiert anzuzeigen.

Abfrage:

 mysql> SELECT ID, Name, DATE_FORMAT (DateTime_Birth, '%W %D %M %Y %r') AS Formatted_DateTime, City FROM student; 

Hier haben wir eine SELECT-Abfrage mit der Funktion DATE_FORMAT() geschrieben, um Datum und Uhrzeit für alle Datensätze in formatierter Form abzurufen. Formatted_DateTime ist ein Alias ​​zum Speichern des formatierten Datums und der formatierten Uhrzeit.

Sie erhalten die folgende Ausgabe:

AUSWEIS Name Formatted_DateTime Stadt
1 Mansi Shah Freitag, 1. Januar 2010, 18:39:09 Uhr Pune
2 Tejal Wagh Donnerstag, 4. März 2010, 05:13:19 Uhr Nasik
3 Sejal Kumari Samstag, 1. Mai 2010, 10:31:07 Uhr Mumbai
4 Sonal Jain Donnerstag, 9. September 2010, 17:17:07 Uhr Shimla
5 Surili Maheshwari Samstag, 10. Juli 2010, 20:45:18 Uhr Brief

Alle Datensätze werden so angezeigt, wie sie aus der Schülertabelle stammen, mit Ausnahme der Spalte „DateTime_Birth“. In der Spalte Formatted_DateTime werden nur Datum und Uhrzeit entsprechend den Anforderungen angezeigt.