sql server 怎样将字符串转化为时间格式

形如:20090506143407这个样子的字符串怎样转化为datetime()默认的格式也就是用sqlservergetdate()这个函数得到的格式...谢谢各位大虾... 形如:20090506143407 这个样子的字符串 怎样转化为datetime() 默认的格式 也就是用sqlserver getdate()这个函数得到的格式... 谢谢各位大虾...
我不是想转化当前时间 那个20090506143407 是表中一个字段如xinxiid 可是这个表中没有时间这个字段,而这个表有几万条数据 我现在需要用时间这个字段就只能把xinxiid转化为时间格式再插入时间字段中...
展开
 我来答
cbcbcbcb1120
2015-09-15 · TA获得超过111个赞
知道小有建树答主
回答量:106
采纳率:0%
帮助的人:82.6万
展开全部
  1. 首先明确问者目的是把表字段xinxiid转换为时间格式,然后插入表的时间字段中

  2. 分析字段xinxiid ,字符 串形式为20090506143407,不能直接转为为getdate的时间格式,需进行相关处理。

  3. 20090506143407 分析字段时间格式,前8位为年月日,后6位为时分秒,把字符串处理为20090506 14:34:07样式即可转为需要的时间格式。为此需要对字符串进行拼接

left('20090506143407',8)+' '+substring('20090506143407',9,2)+':'+substring('20090506143407',11,2)+':'+substring('20090506143407',13,2)
拼接后为 20090506 14:34:07
使用convert(datetime,'20090506 14:34:07')转换为2009-05-06 14:34:07.000

   4.根据提问者的目的使用如下SQL语句实现表中几万条数据的处理

    

update 表名 set 时间字段=convert(datetime,left(xinxiid,8)+' '+
    substring(xinxiid,9,2)+':'+
    substring(xinxiid,11,2)+':'+
    substring(xinxiid,13,2))

注:getdate时间格式为:2015-09-15 09:32:24.080

凭淑琴来君
2019-01-24 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.2万
采纳率:33%
帮助的人:813万
展开全部
如果字符都是4位的话,像下面这样就可以了,
select
cast(left('0548',2)+':'+right('0548',2)
as
time)
这样就能转成时间格式了,如果转成日期+时间的话
select
cast(left('0548',2)+':'+right('0548',2)
as
datetime)
不过年份是从1900年,年份你可以用dateadd函数再调整
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
explore_zjx
推荐于2017-11-23 · TA获得超过270个赞
知道小有建树答主
回答量:304
采纳率:0%
帮助的人:167万
展开全部
declare @data1 nvarchar(20);
set @data1='20090506143408';
set @data1= left(@data1,8)+' '+substring(@data1,9,2)+':'+substring(@data1,11,2)+':'+substring(@data1,13,2)
select convert(datetime,@data1);

思路就是将原有的字符串换成如下形式:20090506 14:34:07

然后再将字符串转换成datetime类型。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友66a8d48e5
2010-09-05 · TA获得超过7687个赞
知道大有可为答主
回答量:3002
采纳率:12%
帮助的人:3888万
展开全部
convert(varchar,getdate(),120)这个是转换成字符的形式,会用convert不?

select replace(replace(replace(convert(varchar(30),getdate(),120),' ',''),'-',''),':','')
这个就是将其中的空格,短线和:去掉就可以了!这个使用是的replace总会用吧?

上式中的120表示转成
yyyy-mm-dd hh:mm:ss的形式
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
在太平湖钓鱼的金雀花
2015-10-29 · TA获得超过320个赞
知道小有建树答主
回答量:330
采纳率:100%
帮助的人:151万
展开全部
select Convert(datetime,'2015-08-23');

SQLServer中Convert函数可以转换任意类型
比如:
varchar转int:select Convert(int,'201')
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式