Importieren von Daten von JJJJMMTT nach JJJJ-MM-TT mit LOAD DATA INFILE
Beim Importieren von Daten aus einem INFILE mit LOAD DATA INFILE können Sie Möglicherweise stoßen Sie auf Daten, die im Format JJJJMMTT gespeichert sind. Dies kann problematisch sein, wenn Sie mit Datenbanken arbeiten, die Datumsangaben im Format JJJJ-MM-TT erfordern.
Lösung:
Glücklicherweise können Sie die Datumsangaben problemlos konvertieren in das gewünschte Format innerhalb der LOAD DATA INFILE-Anweisung selbst, sodass keine externen Konvertierungen mithilfe von Skripten erforderlich sind. Für diese Konvertierung wird die Funktion STR_TO_DATE() verwendet.
Betrachten Sie beispielsweise die folgende INFILE mit Datumsangaben im Format JJJJMMTT:
AADR,20120403,31.43,31.43,31.4,31.4,1100 AAU,20120403,2.64,2.65,2.56,2.65,85700 AAVX,20120403,162.49,162.49,154.24,156.65,2200
Zum Importieren dieser Daten und Konvertieren der Datumsangaben in JJJJ -MM-DD-Format in einem einzigen Schritt verwenden Sie die folgende LOAD DATA INFILE-Anweisung:
LOAD DATA INFILE 'file.txt' INTO TABLE t1 FIELDS TERMINATED BY ',' (column1, @var1, column3, ...) SET column2 = STR_TO_DATE(@var1,'%Y%m%d')
In dieser Anweisung:
Nach der Ausführung dieser Anweisung liegen die Daten in der t1-Tabelle im Format JJJJ-MM-TT vor sie sind mit den Datenbankanforderungen und nachfolgenden Vorgängen kompatibel.
Das obige ist der detaillierte Inhalt vonWie konvertiere ich JJJJMMTT-Daten in JJJJ-MM-TT während LOAD DATA INFILE?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!