Sql Datetime的额外日期

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??

我有一个CSV文件
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