SQL server中,varchar转换为datetime类型
SQLserver中,某一列类型为Varchar(50)保存时间年月日(如:20180406),想要将这一列的数据改为datetime类型的年月日格式,求具体方法和代码举...
SQL server中,某一列类型为Varchar(50)保存时间年月日(如:20180406),想要将这一列的数据改为datetime类型的年月日格式,求具体方法和代码举例。
展开
展开全部
你是想 select 出来这一列数据是 datetime 格式还是要这个表结构的这列修改为 datetime 类型?
如果只是想 select 这列数据是 datetime 可以使用 convert 函数 将其转换成 datetime 类型,下面代码是一个示例可以参考一下:
declare @str varchar(50);
set @str = '20180406'
select convert(datetime, @str, 112)
追问
想要把表的这一列都变成datetime类型
追答
可以先新建一个临时的 datetime 列,然后通过 update 语句 将 varchar(50) 这列通过 convert 转换一下更新到这个临时列,然后把原来那列删除,再把这个临时列的名字改成原来那列的名字。
update 表名 set 临时列=convert(datetime, 原列, 112)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询