©SQL :: Manager
HomeProgramm-InformationenTechnische DetailsKostenloser DownloadKaffee für den Autor
Netzwelt
SQL-FunktionMySQLMariaDB

Die DATE_SUB SQL-Funktion in MySQL und MariaDB - Einheit von Datum und Zeit subtrahieren

DATE_SUBSyntax:DATE_SUB(Datum, INTERVAL Anzahl Einheit)
Rückgabe-Wert:DATE
Synonyme:SUBDATE
Funktions-Typ:Datum und Zeit-Funktion
Funktions-Beschreibung

Die SQL-Funktion DATE_SUB() subtrahiert eine "Anzahl" von "Einheit" vom "Datum".

Das Argument "Datum" ist dabei vom Typ DATE oder DATETIME.

Das Argument "Anzahl" kann dabei auch negativ sein um zum "Datum" zu addieren.


Das Argument "Einheit" gibt die Datums-Einheit an, die vom "Datum" subtrahiert werden soll:

EinheitBeschreibungSyntax
MICROSECOND MikrosekundenAnzahl
SECOND SekundenAnzahl
MINUTE MinutenAnzahl
HOUR StundenAnzahl
DAY TageAnzahl
WEEK WochenAnzahl
MONTH MonateAnzahl
QUARTER Quartale (3 Monate)Anzahl
YEAR JahreAnzahl
SECOND_MICROSECOND Sekunden und Mikrosekunden'20:90'
MINUTE_MICROSECOND Minuten, Sekunden und Mikrosekunden'15:20:90'
MINUTE_SECOND Minuten und Sekunden'15:20'
HOUR_MICROSECOND Stunden, Minuten, Sekunden und Mikrosekunden'3:15:20:90'
HOUR_SECOND Stunden, Minuten und Sekunden'3:15:20'
HOUR_MINUTE Stunden und Minuten'3:15'
DAY_MICROSECOND Tage, Stunden, Minuten, Sekunden und Mikrosekunden'2:3:15:20:90'
DAY_SECOND Tage, Stunden, Minuten und Sekunden'2:3:15:20'
DAY_MINUTE Tage, Stunden und Minuten'3:15:5'
DAY_HOUR Tage und Stunden'15:5'
YEAR_MONTH Jahre und Monate'3:4'


Im Gegensatz zur Funktion SUBDATE() können bei DATE_SUB() INTERVAL und "Einheit" nicht weggelassen werden.

Wenn der Wert von "Datum" oder "Anzahl" NULL ist, gibt die DATE_SUB()-Funktion NULL zurück.

SQL Beispiele für die DATE_SUB-Funktion

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

select now(), date_sub(now(), interval 1 second);
select now(), date_sub(now(), interval 1 minute);
select now(), date_sub(now(), interval 1 hour);
select now(), date_sub(now(), interval 1 day);
select now(), date_sub(now(), interval 1 month);
select now(), date_sub(now(), interval 1 year);

select now(), date_sub(now(), interval -5 second);
select now(), date_sub(now(), interval -5 minute);
select now(), date_sub(now(), interval -5 hour);
select now(), date_sub(now(), interval -5 day);
select now(), date_sub(now(), interval -5 month);
select now(), date_sub(now(), interval -5 year);

select now(), date_sub(now(), interval '20:90' SECOND_MICROSECOND);
select now(), date_sub(now(), interval '15:20:90' MINUTE_MICROSECOND);
select now(), date_sub(now(), interval '15:20' MINUTE_SECOND);
select now(), date_sub(now(), interval '3:15:20:90' HOUR_MICROSECOND);
select now(), date_sub(now(), interval '3:15:20' HOUR_SECOND);
select now(), date_sub(now(), interval '3:15' HOUR_MINUTE);
select now(), date_sub(now(), interval '2:3:15:20:90' DAY_MICROSECOND);
select now(), date_sub(now(), interval '2:3:15:20' DAY_SECOND);
select now(), date_sub(now(), interval '2:3:15' DAY_MINUTE);
select now(), date_sub(now(), interval '2:3' DAY_HOUR);
select now(), date_sub(now(), interval '3:4' YEAR_MONTH);

select date_sub(nullinterval 5 year);
select date_sub(now(), interval null year);

now()
date_sub(now(), interval 1 second)
datetime(19)datetime(19)
2023-03-24 16:56:312023-03-24 16:56:30
now()
date_sub(now(), interval 1 minute)
datetime(19)datetime(19)
2023-03-24 16:56:312023-03-24 16:55:31
now()
date_sub(now(), interval 1 hour)
datetime(19)datetime(19)
2023-03-24 16:56:312023-03-24 15:56:31
now()
date_sub(now(), interval 1 day)
datetime(19)datetime(19)
2023-03-24 16:56:312023-03-23 16:56:31
now()
date_sub(now(), interval 1 month)
datetime(19)datetime(19)
2023-03-24 16:56:312023-02-24 16:56:31
now()
date_sub(now(), interval 1 year)
datetime(19)datetime(19)
2023-03-24 16:56:312022-03-24 16:56:31
now()
date_sub(now(), interval -5 second)
datetime(19)datetime(19)
2023-03-24 16:56:312023-03-24 16:56:36
now()
date_sub(now(), interval -5 minute)
datetime(19)datetime(19)
2023-03-24 16:56:312023-03-24 17:01:31
now()
date_sub(now(), interval -5 hour)
datetime(19)datetime(19)
2023-03-24 16:56:312023-03-24 21:56:31
now()
date_sub(now(), interval -5 day)
datetime(19)datetime(19)
2023-03-24 16:56:312023-03-29 16:56:31
now()
date_sub(now(), interval -5 month)
datetime(19)datetime(19)
2023-03-24 16:56:312023-08-24 16:56:31
now()
date_sub(now(), interval -5 year)
datetime(19)datetime(19)
2023-03-24 16:56:312028-03-24 16:56:31
now()
date_sub(now(), interval '20:90' SECOND_MICROSECOND)
datetime(19)datetime(26)
2023-03-24 16:56:312023-03-24 16:56:10.100000
now()
date_sub(now(), interval '15:20:90' MINUTE_MICROSECOND)
datetime(19)datetime(26)
2023-03-24 16:56:312023-03-24 16:41:10.100000
now()
date_sub(now(), interval '15:20' MINUTE_SECOND)
datetime(19)datetime(19)
2023-03-24 16:56:312023-03-24 16:41:11
now()
date_sub(now(), interval '3:15:20:90' HOUR_MICROSECOND)
datetime(19)datetime(26)
2023-03-24 16:56:312023-03-24 13:41:10.100000
now()
date_sub(now(), interval '3:15:20' HOUR_SECOND)
datetime(19)datetime(19)
2023-03-24 16:56:312023-03-24 13:41:11
now()
date_sub(now(), interval '3:15' HOUR_MINUTE)
datetime(19)datetime(19)
2023-03-24 16:56:312023-03-24 13:41:31
now()
date_sub(now(), interval '2:3:15:20:90' DAY_MICROSECOND)
datetime(19)datetime(26)
2023-03-24 16:56:312023-03-22 13:41:10.100000
now()
date_sub(now(), interval '2:3:15:20' DAY_SECOND)
datetime(19)datetime(19)
2023-03-24 16:56:312023-03-22 13:41:11
now()
date_sub(now(), interval '2:3:15' DAY_MINUTE)
datetime(19)datetime(19)
2023-03-24 16:56:312023-03-22 13:41:31
now()
date_sub(now(), interval '2:3' DAY_HOUR)
datetime(19)datetime(19)
2023-03-24 16:56:312023-03-22 13:56:31
now()
date_sub(now(), interval '3:4' YEAR_MONTH)
datetime(19)datetime(19)
2023-03-24 16:56:312019-11-24 16:56:31
date_sub(null, interval 5 year)
char(19) BINARY
NULL
date_sub(now(), interval null year)
datetime(19)
NULL
Die Beispiele wurden mit dem MyWAY SQL-Manager erstellt: Download

Verwendung der DATE_SUB() Funktion in MySQL und MariaDB-Datenbanken

In MySQL und MariaDB wird die DATE_SUB()-Funktion verwendet, um von einem Datum eine bestimmte Anzahl von Tagen oder anderen Datums-Einheiten abzuziehen. So können Datumsberechnungen durchgeführt werden und kann für Aufgaben wie das Berechnen zukünftiger oder vergangener Daten, das Generieren von Datumsbereichen und das Durchführen datumsbasierter Berechnungen in Abfragen nützlich sein.
DATEDATE_ADDDATE_FORMATDATE_SUBDAYDAYNAMEDAYOFMONTH

Weitere MySQL und MariaDB SQL Datum und Zeit-Funktionen

ADDDATEADDDATE(Datum, [INTERVAL] Anzahl [Einheit])
Mehr zur ADDDATE-Funktion

ADDTIMEADDTIME(Datum, Ausdruck)
Mehr zur ADDTIME-Funktion

CONVERT_TZCONVERT_TZ(Datum, Von Zeitzone, Zu Zeitzone)
Mehr zur CONVERT_TZ-Funktion

CURDATECURDATE()
Mehr zur CURDATE-Funktion

CURTIMECURTIME([Genauigkeit])
Mehr zur CURTIME-Funktion

CURRENT_DATECURRENT_DATE(-)
Mehr zur CURRENT_DATE-Funktion

CURRENT_TIMECURRENT_TIME([Genauigkeit])
Mehr zur CURRENT_TIME-Funktion

CURRENT_TIMESTAMPCURRENT_TIMESTAMP([Genauigkeit])
Mehr zur CURRENT_TIMESTAMP-Funktion

DATEDATE(Datum und Uhrzeit)
Mehr zur DATE-Funktion

DATE_ADDDATE_ADD(Datum, INTERVAL Anzahl Einheit)
Mehr zur DATE_ADD-Funktion

FROM_DAYSFROM_DAYS(Anzahl Tage)
Mehr zur FROM_DAYS-Funktion

FROM_UNIXTIMEFROM_UNIXTIME(Unix-Timestamp [, Format])
Mehr zur FROM_UNIXTIME-Funktion

LOCALTIMELOCALTIME([Genauigkeit])
Mehr zur LOCALTIME-Funktion

LOCALTIMESTAMPLOCALTIMESTAMP([Genauigkeit])
Mehr zur LOCALTIMESTAMP-Funktion

MAKEDATEMAKEDATE(Jahr, Tag vom Jahr)
Mehr zur MAKEDATE-Funktion

MAKETIMEMAKETIME(Stunden, Minuten, Sekunden)
Mehr zur MAKETIME-Funktion

NOWNOW([Genauigkeit])
Mehr zur NOW-Funktion

SEC_TO_TIMESEC_TO_TIME(Sekunden)
Mehr zur SEC_TO_TIME-Funktion

SLEEPSLEEP(Sekunden)
Mehr zur SLEEP-Funktion

STR_TO_DATESTR_TO_DATE(Zeichenkette, Format)
Mehr zur STR_TO_DATE-Funktion

SUBDATESUBDATE(Datum, [INTERVAL] Anzahl [Einheit])
Mehr zur SUBDATE-Funktion

SUBTIMESUBTIME(Datum und Uhrzeit, Abzug)
Mehr zur SUBTIME-Funktion

SYSDATESYSDATE()
Mehr zur SYSDATE-Funktion

TIMETIME(Datum und Uhrzeit)
Mehr zur TIME-Funktion

TIMEDIFFTIMEDIFF(Datum 1, Datum 2)
Mehr zur TIMEDIFF-Funktion

TIMESTAMPTIMESTAMP(Datum [, Addition])
Mehr zur TIMESTAMP-Funktion

TIMESTAMPADDTIMESTAMPADD(Einheit, Anzahl, Datum)
Mehr zur TIMESTAMPADD-Funktion

TIMESTAMPDIFFTIMESTAMPDIFF(Einheit, Datum 1, Datum 2)
Mehr zur TIMESTAMPDIFF-Funktion

UTC_DATEUTC_DATE()
Mehr zur UTC_DATE-Funktion

UTC_TIMEUTC_TIME([Genauigkeit])
Mehr zur UTC_TIME-Funktion

UTC_TIMESTAMPUTC_TIMESTAMP([Genauigkeit])
Mehr zur UTC_TIMESTAMP-Funktion

DAYDAY(Datum)
Mehr zur DAY-Funktion

DAYOFMONTHDAYOFMONTH(Datum)
Mehr zur DAYOFMONTH-Funktion

DAYOFWEEKDAYOFWEEK(Datum)
Mehr zur DAYOFWEEK-Funktion

DAYOFYEARDAYOFYEAR(Datum)
Mehr zur DAYOFYEAR-Funktion

EXTRACTEXTRACT(Einheit FROM Datum)
Mehr zur EXTRACT-Funktion

HOURHOUR(Datum und Uhrzeit)
Mehr zur HOUR-Funktion

MICROSECONDMICROSECOND(Datum und Uhrzeit)
Mehr zur MICROSECOND-Funktion

MINUTEMINUTE(Datum und Uhrzeit)
Mehr zur MINUTE-Funktion

MONTHMONTH(Datum)
Mehr zur MONTH-Funktion

QUARTERQUARTER(Datum)
Mehr zur QUARTER-Funktion

SECONDSECOND(Datum und Uhrzeit)
Mehr zur SECOND-Funktion

TIME_TO_SECTIME_TO_SEC(Uhrzeit)
Mehr zur TIME_TO_SEC-Funktion

TO_DAYSTO_DAYS(Datum)
Mehr zur TO_DAYS-Funktion

TO_SECONDSTO_SECONDS(Datum und Uhrzeit)
Mehr zur TO_SECONDS-Funktion

UNIX_TIMESTAMPUNIX_TIMESTAMP([Datum und Uhrzeit])
Mehr zur UNIX_TIMESTAMP-Funktion

WEEKWEEK(Datum [, Modus])
Mehr zur WEEK-Funktion

WEEKDAYWEEKDAY(Datum)
Mehr zur WEEKDAY-Funktion

WEEKOFYEARWEEKOFYEAR(Datum)
Mehr zur WEEKOFYEAR-Funktion

YEARYEAR(Datum)
Mehr zur YEAR-Funktion

YEARWEEKYEARWEEK(Datum [, Modus])
Mehr zur YEARWEEK-Funktion

DAYNAMEDAYNAME(Datum)
Mehr zur DAYNAME-Funktion

DATE_FORMATDATE_FORMAT(Datum und Uhrzeit, Format)
Mehr zur DATE_FORMAT-Funktion

GET_FORMATGET_FORMAT(Typ, Format)
Mehr zur GET_FORMAT-Funktion

MONTHNAMEMONTHNAME(Datum)
Mehr zur MONTHNAME-Funktion

TIME_FORMATTIME_FORMAT(Uhrzeit, Format)
Mehr zur TIME_FORMAT-Funktion

Numerische FunktionenZeichenketten-FunktionenReguläre AusdrückeDatum und Zeit-Funktionen
Vergleichs-FunktionenVerschlüsselung & KomprimierungKonvertierungs-FunktionenNULL-Funktionen
Aggregat-FunktionenWindow-FunktionenJSON-FunktionenGeometrische Funktionen
Sequenz-FunktionenInformations-FunktionenDynamische Tabellen-SpaltenSonstige Funktionen
Weitere Informationen zur SQL-Funktion DATE_SUB: mysql.com und mariadb.com
Aktualisiert: 17.09.2023ImpressumKontaktGeschäftsbedingungenDatenschutz & CookiesUpdatesSitemapFacebookLinkedinTwitterStatistics©2020-2024 Heino Cunze-Fischer