Der Titel wird wie folgt umgeschrieben: Die chinesische Übersetzung für die Konvertierung einer Zeichenfolge in ein Datum lautet MYSQL-Funktion STR_TO_DATE
P粉270891688
P粉270891688 2023-09-02 11:09:45
0
1
356

Ich habe dieses Datum innerhalb dieses Datums: STR_TO_DATE('28-AUG-60','%d-%M-%y') Wenn ich es in die Tabelle einfüge, erhalte ich Folgendes: 2060-08-28 00:00:00 Was ich erwarte ist: 1960-08-28 00:00:00 Ich weiß, dass es in MSSQL ein RR-Format gibt, das eine zwei- oder vierstellige Jahreszahl angibt. 00-49 ist das 20. Jahrhundert. Wie mache ich das in MySQL? Als ich mir die Dokumentation ansah, sah ich, dass %Y verwendet werden sollte, aber es funktioniert eigentlich nicht Danke!

P粉270891688
P粉270891688

Antworte allen (1)
P粉436410586

如果您知道所有大于某个值的两位数年份,比如'50',应被视为1900年代的年份,而其余的应被视为2000年代的年份,您可以使用CASE表达式来应用不同的日期格式:

SELECT DATE(STR_TO_DATE( date, CASE WHEN RIGHT(date, 2) < ? THEN '%d-%M-%Y' ELSE '%d-%M-%y' END )) date FROM tablename;

?更改为适合您数据的两位数年份(如'50')。

请参见演示

    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage
    Über uns Haftungsausschluss Sitemap
    Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!