您好,欢迎访问一九零五行业门户网

Sql server 2005中格式化时间日期函数

文章收集了大量的大家开发中用到的一些格式化时间日期函数,这里主要是讲到了sql server 2005哦,其它的没测试过有需要的可以参考或补充一下。
 代码如下 复制代码
select convert(varchar, getdate(), 100) -- mon dd yyyy hh:mmam (or pm)
-- oct 2 2008 11:01am
select convert(varchar, getdate(), 101) -- mm/dd/yyyy - 10/02/2008
select convert(varchar, getdate(), 102) -- yyyy.mm.dd -- 2008.10.02
select convert(varchar, getdate(), 103) -- dd/mm/yyyy
select convert(varchar, getdate(), 104) -- dd.mm.yyyy
select convert(varchar, getdate(), 105) -- dd-mm-yyyy
select convert(varchar, getdate(), 106) -- dd mon yyyy
select convert(varchar, getdate(), 107) -- mon dd, yyyy
select convert(varchar, getdate(), 108) -- hh:mm:ss
select convert(varchar, getdate(), 109) -- mon dd yyyy hh:mm:ss:mmmam (or pm)
-- oct 2 2008 11:02:44:013am
select convert(varchar, getdate(), 110) -- mm-dd-yyyy
select convert(varchar, getdate(), 111) -- yyyy/mm/dd
select convert(varchar, getdate(), 112) -- yyyymmdd
select convert(varchar, getdate(), 113) -- dd mon yyyy hh:mm:ss:mmm
-- 02 oct 2008 11:02:07:577
select convert(varchar, getdate(), 114) -- hh:mm:ss:mmm(24h)
select convert(varchar, getdate(), 120) -- yyyy-mm-dd hh:mm:ss(24h)
select convert(varchar, getdate(), 121) -- yyyy-mm-dd hh:mm:ss.mmm
select convert(varchar, getdate(), 126) -- yyyy-mm-ddthh:mm:ss.mmm
-- 2008-10-02t10:52:47.513
-- 利用字符串函数创建不同的日期格式
select replace(convert(varchar, getdate(), 111), '/', ' ') -- yyyy mm dd
select convert(varchar(7), getdate(), 126) -- yyyy-mm
select right(convert(varchar, getdate(), 106), 8) -- mon yyyy
go
--通用的日期转换函数create function dbo.fnformatdate (@datetime datetime, @formatmask varchar(32))returns varchar(32)as
begin
declare @stringdate varchar(32)
set @stringdate = @formatmask
if (charindex ('yyyy',@stringdate) > 0)
set @stringdate = replace(@stringdate, 'yyyy',datename(yy, @datetime))
if (charindex ('yy',@stringdate) > 0)
set @stringdate = replace(@stringdate, 'yy',right(datename(yy, @datetime),2))
if (charindex ('month',@stringdate) > 0)
set @stringdate = replace(@stringdate, 'month',datename(mm, @datetime))
if (charindex ('mon',@stringdate collate sql_latin1_general_cp1_cs_as)>0)
set @stringdate = replace(@stringdate, 'mon',left(upper(datename(mm, @datetime)),3))
if (charindex ('mon',@stringdate) > 0)
set @stringdate = replace(@stringdate, 'mon',left(datename(mm, @datetime),3))
if (charindex ('mm',@stringdate) > 0)
set @stringdate = replace(@stringdate, 'mm',right('0'+convert(varchar,datepart(mm, @datetime)),2))
if (charindex ('m',@stringdate) > 0)
set @stringdate = replace(@stringdate, 'm',convert(varchar,datepart(mm, @datetime)))
if (charindex ('dd',@stringdate) > 0)
set @stringdate = replace(@stringdate, 'dd',right('0'+datename(dd, @datetime),2))
if (charindex ('d',@stringdate) > 0)
set @stringdate = replace(@stringdate, 'd',datename(dd, @datetime))
return @stringdate
end
go
执行上面格式化时间和日期的t-sql脚本,在查询分析器中示范了sql server中的大多数可用的时间数据格式。首先我们开始转换sql的一些可用的时间格式
其它类似信息

推荐信息