zoukankan      html  css  js  c++  java
  • SQLServer 将日期改造成标准日期格式(如: 2016/6 ->201606)

    同事给了份Excel 数据,导到数据库之后再查出来时发现顺序不好弄。于是想从数据源中做处理。

    由于数据存在,年/月 与 年/月/日 的格式不好用datetime保存,于是用varchar保存。

    数据处理主要有两点,1,拆分,2,补全

    下面是拆分代码

    create  function  [dbo].[SplitIn](@c   varchar(max),@split   varchar(2))   
    returns   @t   table(col   varchar(400))
    as   
    begin    
      while(charindex(@split,@c)<>0)   
        begin   
          insert   @t(col)   values   (substring(@c,1,charindex(@split,@c)-1))   
          set   @c   =   stuff(@c,1,charindex(@split,@c),'')   
        end   
      insert   @t(col)   values   (@c)   
      return   
    end  
    

    补全我是用了  REPLICATE 函数

    DECLARE @Result nvarchar(max)
    	set @Result=''
    	select  @Result=@Result+isnull(REPLICATE('0',2-len(col)),'')+cast(col as varchar) from SplitIn('2015/1','/')
    	
    	select @Result
    	
    

      

      结果如下:

    自己把第二段sql封成函数,就可以在sql语句中调用了..

  • 相关阅读:
    12.18-java复习-UserBean
    12.17-javaweb复习
    12.16-javaweb复习
    Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
    java建议
    个人表现
    今日总结
    今日总结
    今日总结
    今日总结
  • 原文地址:https://www.cnblogs.com/jackicalSong/p/5549898.html
Copyright © 2011-2022 走看看