gpt4 book ai didi

mysql - 使用文件中的 mysql 加载数据格式化 csv 日期列

转载 作者:行者123 更新时间:2023-11-29 01:59:17 31 4
gpt4 key购买 nike

我正在使用在文件查询中加载数据将 csv 插入表中。我必须在 csv 中格式化日期列,

LOAD DATA INFILE '/invoices/invoice1381301986.csv' INTO TABLE invoice_table FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' (`code`,@var1)  set datefield=STR_TO_DATE(@var1, '%m/%d/%Y');

我可以使用上述查询格式化日期。

但问题是,我的 csv 日期列有不同的格式。可能的格式是“m/d/Y”、“m-d-Y”、“m/d/y”、“m-d-y”、“Y-m-d”、“Y/m/d”。

所以我的查询应该根据 csv 中的日期格式,这样我就可以像这样修改我的查询,

datefield=STR_TO_DATE(@var1, '%m/%d/%Y')

datefield=STR_TO_DATE(@var1, '%m-%d-%Y')..

如何读取 csv 日期字段的格式?

最佳答案

你需要使用一个CASE:

LOAD DATA INFILE '/invoices/invoice1381301986.csv' 
INTO TABLE invoice_table
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
(`code`,@var1)
SET datefield= (
CASE
WHEN @var1 REGEXP '[0-9]{2}/[0-9]{2}/[0-9]{4}' THEN STR_TO_DATE(@var1,'%m/%d/%Y')
...
END
)

关于mysql - 使用文件中的 mysql 加载数据格式化 csv 日期列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19271955/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com