mysql read string作为datetime

cngwdvgl  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(387)

你好,我在用 LOAD DATA INFILE 在mysql中填充表。

LOAD DATA INFILE 'test.txt'
INTO TABLE myTestTable
FIELDS TERMINATED BY '\t'
IGNORE 1 LINES;

除了我的数据中有一个datetime列,它的格式在date和time部分之间没有任何分隔符之外,其他一切都很正常。像这样:

SomeDateColumn
20050101081946

当我读入本文时,mysql用伪值替换所有日期。有没有办法让mysql直接从一个文件中正确地读入这些内容?
谢谢!

piok6c0g

piok6c0g1#

你可以打电话 STR_TO_DATE 当你跑的时候 LOAD DATA ,并实时将文本日期转换为真实日期:

LOAD DATA INFILE 'test.txt'
INTO TABLE myTestTable
FIELDS TERMINATED BY '\t'
IGNORE 1 LINES
(
    col1, col2, @var1     -- list out all columns here
)

SET SomeDateColumn = STR_TO_DATE(@var1, '%Y%m%d%h%i%s');

相关问题