Mysql 将字符串读取为日期时间
Mysql read string as datetime
您好,我正在使用 LOAD DATA INFILE
在 MySQL 中填充 table。
LOAD DATA INFILE 'test.txt'
INTO TABLE myTestTable
FIELDS TERMINATED BY '\t'
IGNORE 1 LINES;
除了我的数据中有一个日期时间列,该列的格式在日期和时间部分之间没有任何分隔符外,一切都很好。像这样:
SomeDateColumn
20050101081946
当我读入此内容时,MySQL 将所有日期替换为虚拟值。有没有办法让 MySQL 直接从文件中正确读取它?
谢谢!
您可以在 运行 LOAD DATA
时调用 STR_TO_DATE
,并即时将文本日期转换为真正的日期:
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');
您好,我正在使用 LOAD DATA INFILE
在 MySQL 中填充 table。
LOAD DATA INFILE 'test.txt'
INTO TABLE myTestTable
FIELDS TERMINATED BY '\t'
IGNORE 1 LINES;
除了我的数据中有一个日期时间列,该列的格式在日期和时间部分之间没有任何分隔符外,一切都很好。像这样:
SomeDateColumn
20050101081946
当我读入此内容时,MySQL 将所有日期替换为虚拟值。有没有办法让 MySQL 直接从文件中正确读取它?
谢谢!
您可以在 运行 LOAD DATA
时调用 STR_TO_DATE
,并即时将文本日期转换为真正的日期:
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');