如果需要转换因为的月份,需要使用case when 来转换.例如:select datename(dd , getdate) + '-' + case when datename(month , getdate) = '01' then 'jan' when datename(month , getdate) = '02' then 'feb' ... when datename(month , getdate) = '12' then 'dec' end + '-' + datename(year , getdate)
set @dt='2008-02-20'
select convert(varchar(20),@dt,107)
/*Changed language setting to us_english.
--------------------
Feb 20, 2008*/
/*
----------
19/02/2009(所影响的行数为 1 行)
*/
select convert(varchar(10),getdate(),104)
/*
----------
19.02.2009(所影响的行数为 1 行)
*/select convert(varchar(10),getdate(),105)
/*
----------
19-02-2009(所影响的行数为 1 行)
*/select convert(varchar(10),getdate(),106)/*
----------
19 02 2009(所影响的行数为 1 行)
*/
二、日期转换参数详细介绍
--日期转换参数,值得收藏
select convert(varchar,getdate(),120)--2009-02-04 12:55:30
select replace(replace(replace(convert(varchar, getdate(),120),'-',''),' ',''),':','')--20090204125539
select convert(varchar(12),getdate(),111)--2009/02/04
select convert(varchar(12),getdate(),112)--20090204
select convert(varchar(12),getdate(),102)--2009.02.04
--其它我不常用的日期格式转换方法:
select convert(varchar(12),getdate(),101)--02/04/2009
select convert(varchar(12),getdate(),103)--04/02/2009
select convert(varchar(12),getdate(),104)--04.02.2009
select convert(varchar(12),getdate(),105)--04-02-2009
select convert(varchar(12),getdate(),106)--04 feb 2009
select convert(varchar(12),getdate(),107)--feb 04, 2009
select convert(varchar(12),getdate(),108)--12:57:20
select convert(varchar(12),getdate(),109)--feb 4 2009
select convert(varchar(12),getdate(),110)--02-04-2009
select convert(varchar(12),getdate(),113)--04 feb 2009
select convert(varchar(12),getdate(),114)--12:56:50:763
case when datename(month , getdate) = '01' then 'jan'
when datename(month , getdate) = '02' then 'feb'
...
when datename(month , getdate) = '12' then 'dec' end + '-' +
datename(year , getdate)