©SQL :: Manager
HomeProgramm-InformationenTechnische DetailsKostenloser DownloadKaffee für den Autor
Diese Webseite funktioniert besser mit Javascript
Der MyWAY SQL-Manager kann hier kostenlos heruntergeladen werden: als PHP-Installations-Datei als GZIP-Datei als ZIP-Archiv
Falls der Download von dieser Seite nicht funktionieren sollte, können Sie das Programm auch hier (Virengeprüft bei heise.de) herunterladen.
Mit dem Download akzeptieren Sie die Allgemeinen Geschäftsbedingungen
Das Programm MyWAY SQL-Manager funktioniert nur mit Javascript
Netzwelt
SQL-FunktionMySQLMariaDB

Die STR_TO_DATE SQL-Funktion in MySQL und MariaDB - Zeichenkette zu Datum formatieren

STR_TO_DATESyntax:STR_TO_DATE(Zeichenkette, Format)
Rückgabe-Wert:DATE, TIME, DATETIME
Funktions-Typ:Datum und Zeit-Funktion
Funktions-Beschreibung

Die SQL-Funktion STR_TO_DATE() nimmt eine "Zeichenkette" nach der Angabe von "Format" und gibt je nach Inhalt der "Format"-Angabe einen Wert vom Typ DATETIME, DATE oder TIME zurück.

Die in "Zeichenkette" enthaltenen Datums- und Zeit-Werte sollten der durch "Format" angegebenen Zeichenfolge entsprechen.

Wenn die Argumente "Zeichenkette" oder "Format" einen ungültigen Wert oder NULL enthalten, gibt die STR_TO_DATE()-Funktion NULL zurück.


STR_TO_DATE() ist die Umkehrung der Funktion DATE_FORMAT().


Optionen für den "Format"-String:

OptionBeschreibung
%aKurzer Name des Wochentags im aktuellen Gebietsschema (Variable lc_time_names).
%bKurzform des Monatsnamens im aktuellen Gebietsschema. Für das Gebietsschema en_US ist dies einer der folgenden: Jan, Feb, Mär, Apr, Mai, Jun, Jul, Aug, Sep, Okt, Nov oder Dez.
%cMonat mit 1 oder 2 Ziffern.
%DTag mit englischem Suffix "th", "nd", "st" oder "rd". (1., 2., 3. ...).
%dTag mit 2 Ziffern.
%eTag mit 1 oder 2 Ziffern.
%fMikrosekunden 6 Ziffern.
%HStunde mit 2 Ziffern zwischen 00-23.
%hStunde mit 2 Ziffern zwischen 01-12.
%IStunde mit 2 Ziffern zwischen 01-12.
%iMinute mit 2 Ziffern.
%jTag des Jahres (001-366)
%kStunde mit 1 Ziffern zwischen 0-23.
%lStunde mit 1 Ziffern zwischen 1-12.
%MVollständiger Monatsname im aktuellen Gebietsschema (Variable lc_time_names).
%mMonat mit 2 Ziffern.
%pAM/PM gemäß aktuellem Gebietsschema (Variable lc_time_names).
%rUhrzeit im 12-Stunden-Format, gefolgt von AM/PM. Abkürzung für '%I:%i:%S %p'.
%SSekunden mit 2 Ziffern.
%sSekunden mit 2 Ziffern.
%TUhrzeit im 24-Stunden-Format. Abkürzung für '%H:%i:%S'.
%UWochennummer (00-53), wenn der erste Tag der Woche Sonntag ist.
%uWochennummer (00-53), wenn der erste Tag der Woche Montag ist.
%VWochennummer (01-53), wenn der erste Tag der Woche Sonntag ist. Wird mit %X verwendet.
%vWochennummer (01-53), wenn der erste Tag der Woche Montag ist. Wird mit %x verwendet.
%WVollständiger Name des Wochentags im aktuellen Gebietsschema (Variable lc_time_names).
%wWochentag. 0 = Sonntag, 6 = Samstag.
%XJahr mit 4 Ziffern, wenn der erste Tag der Woche Sonntag ist. Wird mit %V verwendet.
%xJahr mit 4 Ziffern, wenn der erste Tag der Woche Sonntag ist. Wird mit %v verwendet.
%YJahr mit 4 Ziffern.
%yJahr mit 2 Ziffern.
%#Überspringt für str_to_date() alle Zahlen.
%.Überspringt bei str_to_date() alle Satzzeichen.
%@Überspringt für str_to_date() alle Alphazeichen.
%%Ein wörtliches %-Zeichen.

SQL Beispiele für die STR_TO_DATE-Funktion

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17

select str_to_date('2020-02-30''%Y-%m-%d');
select str_to_date('2020, 02, 30''%Y, %m, %d');
select str_to_date('30, 02, 2020''%d, %m, %Y');
select str_to_date('20200230''%Y%m%d');
select str_to_date('May 2, 2023''%M %e, %Y');
select str_to_date('Monday, May 2, 2023''%W, %M %e, %Y');

select str_to_date('10 15 30''%H %i %s');
select str_to_date('30 15 10''%s %i %H');
select str_to_date('10 15 30 6000''%H %i %s %f');

select str_to_date('May 2, 2023''%W, %M %e, %Y');
select str_to_date('May 2, 2023''');
select str_to_date(null'%W, %M %e, %Y');
select str_to_date('Monday, May 2, 2023'null);

str_to_date('2020-02-30', '%Y-%m-%d')
date(10)
2020-02-30
str_to_date('2020, 02, 30', '%Y, %m, %d')
date(10)
2020-02-30
str_to_date('30, 02, 2020', '%d, %m, %Y')
date(10)
2020-02-30
str_to_date('20200230', '%Y%m%d')
date(10)
2020-02-30
str_to_date('May 2, 2023', '%M %e, %Y')
date(10)
2023-05-02
str_to_date('Monday, May 2, 2023', '%W, %M %e, %Y')
date(10)
2023-05-02
str_to_date('10 15 30', '%H %i %s')
time(10)
10:15:30
str_to_date('30 15 10', '%s %i %H')
time(10)
10:15:30
str_to_date('10 15 30 6000', '%H %i %s %f')
time(17)
10:15:30.600000
str_to_date('May 2, 2023', '%W, %M %e, %Y')
date(10)
NULL
str_to_date('May 2, 2023', '')
date(10)
NULL
str_to_date(null, '%W, %M %e, %Y')
date(10)
NULL
str_to_date('Monday, May 2, 2023', null)
datetime(26)
NULL
Die Beispiele wurden mit dem MyWAY SQL-Manager erstellt: Download

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

Die Funktion STR_TO_DATE() in MySQL und MariaDB wandelt eine Zeichenfolgendarstellung eines Datums oder einer Uhrzeit in einen entsprechenden Datums- oder Uhrzeitwert um und ermöglicht es, das Format der Eingabezeichenfolge mithilfe von Formatbezeichnern anzugeben, um es an das Muster der Datums- oder Uhrzeitzeichenfolge anzupassen. Die Funktion gibt kein Ergebnis zurück, wenn die Eingabezeichenfolge nicht mit dem angegebenen Format übereinstimmt. STR_TO_DATE() ist nützlich, wenn eine Zeichenfolgendarstellung eines Datums oder einer Uhrzeit in einen geeigneten Datums- oder Uhrzeitwert in MySQL oder MariaDB konvertiert werden muss.
STDDEVSTDDEV_POPSTDDEV_SAMPSTR_TO_DATESTRCMPSUBDATESUBSTR

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

DATE_SUBDATE_SUB(Datum, INTERVAL Anzahl Einheit)
Mehr zur DATE_SUB-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

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 STR_TO_DATE: mysql.com und mariadb.com und w3schools.com
Aktualisiert: 04.11.2025ImpressumKontaktGeschäftsbedingungenDatenschutz & CookiesUpdatesSitemapFacebookLinkedin©2020-2025 Heino Cunze-Fischer