我正在尝试将数据从文本文件导入SQL数据库。该文件不使用TAB来分隔字段。我在导入时遇到的问题是,当我编写以Int作为Int的时间时,它会完全混淆导入。
部分文字文件:
North Felix 2011-07-01 0422 0.47 0012 0.69 2109 0.55 1311 1.44 North Felix 2011-07-02 0459 0.43 0048 0.72 2140 0.55 1342 1.47 North Felix 2011-07-03 0533 0.41 0123 0.75 2213 0.57 1412 1.46 North Felix 2011-07-04 0605 0.41 0158 0.79 2244 0.59 1441 1.41
我的查询结果:
INSERT INTO `dbc`.`history_long` (`Region`,`Location`,`Date`,`LT1-time`,`LT1-height`,`HT1-time`,`HT1-height`,`LT2-time`,`LT2-height`,`HT2-time`,`HT2-height`)
values ('North','Felix','2011:00:00','422:00:00','0.47','12:00:00','0.69','2109:00:00','0.55','1311:00:00','1.44'),
('North','Felix','2011:00:00','459:00:00','0.43','48:00:00','0.72','2140:00:00','0.55','1342:00:00','1.47'),
('North','Felix','2011:00:00','533:00:00','0.41','123:00:00','0.75','2213:00:00','0.57','1412:00:00','1.46'),
('North','Felix','2011:00:00','605:00:00','0.41','158:00:00','0.79','2244:00:00','0.59','1441:00:00','1.41'),
问题是例如时间列中的L2时间变为2109:00:00。有没有办法将此转换为Int到Time?
答案 0 :(得分:0)
以下是将int
0422
转换为time
值的方法:
SELECT CAST('00:00' AS time)
+ INTERVAL (@IntValue DIV 60) HOUR
+ INTERVAL (@IntValue % 60) MINUTE
如果没有看到您的导入查询,就无法说明如何实际应用它。