sybase日期函数

Tags: sybase
sybase日期函数
 
1 获取当前日期时间 getdate() 
select getdate() 
  www.4byte.cn  
2 取指定时间的某一部分 datepart(日期部分,日期) 
--取时间的某一个部分 
select datepart(yy,getdate()) --year 
select datepart(mm,getdate()) --month 
select datepart(dd,getdate()) --day 
select datepart(hh,getdate()) --hour 
select datepart(mi,getdate()) --min 
select datepart(ss,getdate()) --sec 
--取星期几 
set datefirst 1  
select datepart(weekday,getdate()) --weekday 
 
3 日期2-日期1,单位为日期部分指定 datediff(日期部分,日期1,日期2) 
SELECT datediff(yy,'2012/12/01',getdate()) 
SELECT datediff(mm,'2012/12/01',getdate()) 
SELECT datediff(dd,'2012/12/01',getdate()) 
SELECT datediff(hh,'2012/12/01',getdate()) 
SELECT datediff(mi,'2012/12/01',getdate()) 
SELECT datediff(ss,'2012/12/01',getdate()) 
 
4 计算指定时间,再加上表达式指定的时间长度 dateadd(日期部分,数值,日期) 
SELECT dateadd(yy,1,getdate()) 
SELECT dateadd(mm,1,getdate()) 
SELECT dateadd(dd,1,getdate()) 
SELECT dateadd(hh,1,getdate()) 
SELECT dateadd(mi,1,getdate()) 
SELECT dateadd(ss,1,getdate()) 
 
5 字符串时间 
select getdate() -- '2012/12/4 10:48:07.540' 
select convert(char,getdate(),101) -- '12/04/2012' 
select convert(char,getdate(),102) -- '2012.12.04' 
select convert(char,getdate(),103) -- '04/12/2012' 
select convert(char,getdate(),104) -- '04.12.2012' 
select convert(char,getdate(),105) -- '04-12-2012 
select convert(char,getdate(),106) -- '04 Dec 2012' 
select convert(char,getdate(),107) --'Dec 04, 2012' 
select convert(char,getdate(),108) --'11:16:06' 
select convert(char,getdate(),109) --'Dec  4 2012 10:50:28:146AM' 
select convert(char,getdate(),110) --'12-04-2012' 
select convert(char,getdate(),111) --'2012/12/04' 
select convert(char,getdate(),112) --'20121204' 
  www.4byte.cn  
6 以时间为维度的趋势查询 
--查询一个月内的每一天 
select convert(varchar(10), 
               dateadd(dd, 
                       number + 1, 
                       convert(char(10), dateadd(mm, -1, getdate()), 111)), 
               111) dt 
  from master .. spt_values 
where type = 'p' 
   and number < 31 
--查询一年内的每一月 
select convert(varchar(7), 
               dateadd(mm, 
                       number + 1, 
                       convert(char(10), dateadd(yy, -1, getdate()), 111)), 
               111) dt 
  from master .. spt_values 
where type = 'p' 
   and number < 12 
   
7 空处理函数 
isnull(val1,val2)   val1为空,值为val2
 

本文链接:http://www.4byte.cn/learning/109712.html