如何将VARCHAR datetime转换为DATETIME类型以填充表 [英] How to convert VARCHAR datetime to DATETIME type to populate table

查看:224
本文介绍了如何将VARCHAR datetime转换为DATETIME类型以填充表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个带有VARCHAR()列的表,其值为这种格式:

  2012-10-05T11:14 :00-04:00 

我需要把这些数据放到另一个表中,字段为DATETIME。



如何转换

  2012 -10-05T11:14:00-04:00 

  2012-10-05 11:14:00 



我试过:

  CAST LEFT(REPLACE(fieldtimestamp,'T',''),19)AS DATETIME)

但是不断给我错误:


从字符串转换日期和/或时间时,转换失败。



解决方案

  select CAST(LEFT(REPLACE('2012-10-05T11:14:00 -04:00','T',''),19)AS DATETIME)

我givin g

  2012-10-05 11:14:00.000 

在sql server 2012下


I have a table with a VARCHAR() column with values in this format:

2012-10-05T11:14:00-04:00

I need to put this data into another table where the data type of the field is DATETIME.

How would I go about converting

2012-10-05T11:14:00-04:00

to

2012-10-05 11:14:00

?

I tried:

CAST(LEFT(REPLACE(fieldtimestamp, 'T', ' '), 19) AS DATETIME)

But it keeps giving me the error:

Conversion failed when converting date and/or time from character string.

解决方案

select CAST(LEFT(REPLACE('2012-10-05T11:14:00-04:00', 'T', ' '), 19) AS DATETIME)

works for me giving

2012-10-05 11:14:00.000

under sql server 2012

这篇关于如何将VARCHAR datetime转换为DATETIME类型以填充表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆