【发布时间】:2018-06-29 17:31:17
【问题描述】:
我正在使用 Mysql 工作台。
我有一个巨大的 csv 数据库,其中包含 3 列具有不同日期格式的内容。 为了能够将此 csv 文件加载到我的数据库中,我必须将 3 个日期列设置为文本,否则无法正确上传它们。 这是我的数据示例:
inDate, outDAte
19-01-10, 02-02-10
04-01-11 12:02, 2011-01-11 11:31
29-01-11 6:57, 29-03-2010
30-03-10, 01-04-2010
2012-12-03 05:39:27.040, 12-12-12 17:04
2012-12-04 13:47:01.040, 29-11-12
我想将它们同质化并制作 2 列,其中每一列仅带有“日期”,而另一列仅带有“时间”。
我尝试过使用“正则表达式”和“大小写”。
当我使用“reg 表达式”时给了我空值,而使用“case”时给了我“截断的错误值”。
我试图在网上找到类似的情况。我发现人们遇到了类似的问题,但有两种日期格式,不像我有那么多不同的格式:
- Convert varchar column to date in mysql at database level
- Converting multiple datetime formats to single mysql datetime format
- Format date in SELECT * query.
我真的很陌生,我不知道如何在mysql中编写这么多异常。
【问题讨论】:
-
02-02-10是 2002 年吗?还是在 2010 年?也就是模棱两可的值该怎么办? -
是的!这也很棘手!幸运的是,我知道数据跨度是从 2010 年到 2012 年。否则没有机会知道它:(
-
那么
10-11-12是什么日期?