【发布时间】:2016-11-21 11:21:16
【问题描述】:
我有一个巨大的 .CSV 文件,其中包含有关铁人三项比赛(人物、时间、国家、总时间等)的所有信息,都在 varchar 中...
问题是一列 (Overalltime) 存储 datatime 和 varchar 类型。 例如,varchars 是 (DNS,DNF,DQ) 而数据时间是 (09:09:30)。
当我创建表格时,我有一个这样的列:
overalltime
-------------
09:09:30
09:10:22
DNF
DNS
但我想将表格中的那一列拆分为两列。一个带有日期时间值,另一个带有 varchar 列。
拆分该列的最佳方法是什么?
【问题讨论】:
-
如果您要导入大量文件,我建议您使用SSIS。您可以遵循两种基本模式。将所有数据加载到staging table 中,然后编写一个查询,将值拆分为列。或者在 SSIS 管道中执行该转换。函数ISDATE(SQL Server 2008 或更高版本)可以帮助实现第一个选项。
标签: sql-server types multiple-columns