select stuff(stuff(时间,2,0,':'),5,0,':')

解决方案 »

  1.   

    上面好像不对 select stuff(stuff('151012',3,0,':'),6,0,':')
      

  2.   

    print stuff(stuff('121321',3,0,':'),6,0,':')
    结果: 12:13:21
      

  3.   

    TO  lsxaa(小李铅笔刀)
    估计楼主要分些情况处理吧,比方说:15:10:12是存为了151012
    要是5:10:12 又是怎么存的呢?是051012,还是51012?
      

  4.   

    declare @time char(6),@hour char(2),@minute char(2),@second char(2),@out varchar(100)
    set @time='151012'
    set @hour=substring(@time,1,2)
    set @minute=substring(@time,3,2)
    set @second=substring(@time,5,2)
    exec xp_sprintf @out output,'%s:%s:%s',@hour,@minute,@second
    print @out
      

  5.   

    回复人: zhangzs8896(小二) ( ) 信誉:100  2004-10-25 10:35:00  得分: 0  
     
     
    TO  lsxaa(小李铅笔刀)
    估计楼主要分些情况处理吧,比方说:15:10:12是存为了151012
    要是5:10:12 又是怎么存的呢?是051012,还是51012?   这个没考虑到,看楼主怎么存的了
      

  6.   

    declare @time varchar(6),@hour varchar(6),@minute varchar(6),@second varchar(6),@out varchar(100)
    set @time='151012'
    set @hour=right(@time,2)
    set @minute=left(right(@time,4),2)
    set @second=case when len(@time)=5 then left(right(@time,5),1) else left(right(@time,6),2) end
    set  @out=@second+':'+@minute+':'+@hour
    print @out
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    15:10:12
      

  7.   

    declare @time varchar(6),@hour varchar(6),@minute varchar(6),@second varchar(6),@out varchar(100)
    set @time='51012'
    set @hour=right(@time,2)
    set @minute=left(right(@time,4),2)
    set @second=case when len(@time)=5 then left(right(@time,5),1) else left(right(@time,6),2) end
    set  @out=@second+':'+@minute+':'+@hour
    print @out
    ~~~~~~~~~~~~~~~~~~~~
    5:10:12
      

  8.   

    declare @time varchar(6),@newtime varchar(10)
    set @time='151012'
    set @newtime=case when len(@time)=6 then stuff(stuff(@time,3,0,':'),6,0,':') when len(@time)=5 then  '0'+stuff(stuff(@time,2,0,':'),5,0,':') end
    print @newtime或
    declare @time varchar(6),@newtime varchar(10)
    set @time='51012'
    if len(@time)=6 
     begin
        set @newtime=stuff(stuff(@time,3,0,':'),6,0,':') 
     end 
    else if  len(@time)=5 
     begin 
       set  @newtime='0'+stuff(stuff(@time,2,0,':'),5,0,':')
     end 
    print @newtime当@time='151012'时,结果为15:10:12
    当@time='51012'时,结果为05:10:12