Sql Server中如何将日期转换为yyyy-mm格式

解决方案 »

  1.   

    select convert(varchar(7),getdate(),120)
      

  2.   

    select convert(varchar(7),getdate(),120)-------
    2010-09(1 行受影响)
      

  3.   

    select convert(varchar(7),getdate(),120)或
    select convert(varchar(7),getdate(),121)或
    select convert(varchar(7),getdate(),126)--专门用于 XML。
      

  4.   

    --1.短日期格式:yyyy-m-d
    SELECT REPLACE(CONVERT(varchar(10),@dt,120),N'-0','-')--2.长日期格式:yyyy年mm月dd日 
    --A. 方法1 
    SELECT STUFF(STUFF(CONVERT(char(8),@dt,112),5,0,N'年'),8,0,N'月')+N'日'
    --B. 方法2 
    SELECT DATENAME(Year,@dt)+N'年'+DATENAME(Month,@dt)+N'月'+DATENAME(Day,@dt)+N'日'--3.长日期格式:yyyy年m月d日
    SELECT DATENAME(Year,@dt)+N'年'+CAST(DATEPART(Month,@dt) AS varchar)+N'月'+DATENAME(Day,@dt)+N'日'--4.完整日期+时间格式:yyyy-mm-dd hh:mi:ss:mmm
    SELECT CONVERT(char(11),@dt,120)+CONVERT(char(12),@dt,114)
      

  5.   

    select getdate()2004-09-12 11:06:08.177整理了一下SQL Server里面可能经常会用到的日期格式转换方法:举例如下:select CONVERT(varchar, getdate(), 120 )
    2004-09-12 11:06:08select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')
    20040912110608select CONVERT(varchar(12) , getdate(), 111 )
    2004/09/12select CONVERT(varchar(12) , getdate(), 112 )
    20040912select CONVERT(varchar(12) , getdate(), 102 )
    2004.09.12select CONVERT(varchar(12) , getdate(), 101 )
    09/12/2004select CONVERT(varchar(12) , getdate(), 103 )
    12/09/2004select CONVERT(varchar(12) , getdate(), 104 )
    12.09.2004select CONVERT(varchar(12) , getdate(), 105 )
    12-09-2004select CONVERT(varchar(12) , getdate(), 106 )
    12 09 2004select CONVERT(varchar(12) , getdate(), 107 )
    09 12, 2004select CONVERT(varchar(12) , getdate(), 108 )
    11:06:08select CONVERT(varchar(12) , getdate(), 109 )
    09 12 2004 1select CONVERT(varchar(12) , getdate(), 110 )
    09-12-2004select CONVERT(varchar(12) , getdate(), 113 )
    12 09 2004 1select CONVERT(varchar(12) , getdate(), 114 )
    11:06:08.177