请问如何将0611151834转换成2006-11-15 18:34:00

解决方案 »

  1.   

    declare @s varchar(100)set @s='0611151834'select cast(left(@s,6) + ' ' + substring(@s,7,2) + ':' + right(@s,2) as datetime)
      

  2.   

    select convert(varchar(10),cast (left('0611151834',6)as datetime),120) +' ' +substring('0611151834',7,2)
    +':'+right('0611151834',2)+':00'----------------------- 
    2006-11-15 18:34:00(所影响的行数为 1 行)
      

  3.   


    --0611151834declare @s varchar(100)set @s='0611151834'select convert(varchar(20),cast(left(@s,6) + ' ' + substring(@s,7,2) + ':' + right(@s,2) as datetime),120)/*
    --返回2006-11-15 18:34:00
    */
      

  4.   

    declare @sql varchar(1000)
    set @sql='0611151834'select cast (left(@sql,6)as datetime) +(substring(@sql,7,2)+':'+right(@sql,2))                                                       
    ------------------------------------------------------ 
    2006-11-15 18:34:00.000(所影响的行数为 1 行)
      

  5.   

    在联机帮助里
    楼主看一个convert时间转换格式
    再用时间的+/-
    如下:1为加一天,15:11为加的小时和分
    select getdate()+1+'15:11'
      

  6.   

    这样的显示方式'2006-11-15'不用转换
    在系统里设置就行了
    设置方法:
    在控制面板—区域和语言选项—日期格式设置为(yyyy-MM-dd)就行了
      

  7.   

    declare @str varchar(10)
    set @str='0611151834'
    select @str
    select dateadd(minute, cast(substring(@str, 9, 2) as int), 
       dateadd(hour, cast(substring(@str, 7, 2) as int), 
       convert(datetime, left(@str, 6), 112)) )
      

  8.   

    declare @sql varchar(1000)
    set @sql='0611151834'select cast(('20'+substring(@sql,1,2)+'-'+ substring(@sql,3,2)+'-'+substring(@sql,5,2)+' '+ substring(@sql,7,2)+':'+right(@sql,2)) as datetime)
    ------------------------------------------------------ 
    2006-11-15 18:34:00.000(所影响的行数为 1 行)