Sql Datetime的额外日期
我有一个CSV文件Sql Datetime的额外日期,sql,sql-server,Sql,Sql Server,我有一个CSV文件Date列,其中包含以下值: StartDate --------------------------- 01/02/2014 0:00 09/04/2013 0:00 我只想从上面的列值中提取日期部分。我创建了数据类型为Varchar的表,因为如果我将其声明为DATETIME,则无法执行大容量插入。仅日期部分就可以使用LEFT函数提取。 (以您上面指定的格式提供您的所有数据) 通过按“空格”拆分来获取日期部分 然后做insert语句 为什么表的数据类型为varchar??
Date
列,其中包含以下值:
StartDate
---------------------------
01/02/2014 0:00
09/04/2013 0:00
我只想从上面的列值中提取日期部分。我创建了数据类型为Varchar的表,因为如果我将其声明为DATETIME,则无法执行大容量插入。仅日期部分就可以使用LEFT函数提取。
(以您上面指定的格式提供您的所有数据)
通过按“空格”拆分来获取日期部分 然后做insert语句
为什么表的数据类型为varchar??为什么不指定日期?您可以将数据批量插入到一个表中,在该表中保存数据以供中间存储。尝试以下方法:
SELECT id, LEFT(CONVERT(VARCHAR, dateCol, 103), 10) FROM temptbl
请查看以下MSDN页面,了解CONVERT()提供的日期格式:
大容量插入到带有varchar列的阶段表中,然后使用SQL将其转换为最终目标表中的日期时间。
cols[col_num].split(" ")[0]
SELECT id, LEFT(CONVERT(VARCHAR, dateCol, 103), 10) FROM temptbl