程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SyBase數據庫 >> SyBase綜合文章 >> Sybase日期函數應用示例

Sybase日期函數應用示例

編輯:SyBase綜合文章

Sybase日期函數是我們經常會使用的函數,下面為您介紹的幾個Sybase日期函數應用例子都是我們常用的功能,供您參考學習。

Sybase日期函數
--------------------------------------------------------------------------------

日期函數
getdate()
得到當前時間,可以設置得到各種時間格式.
datepart(日期部分,日期)
取指定時間的某一個部分,年月天時分秒.
datediff(日期部分,日期1,日期2)
計算指定的日期1和日期2的時間差多少.
dateadd(日期部分,數值表達式,日期)
計算指定時間,再加上表達式指定的時間長度.

--取時間的某一個部分

  1. select datepart(yy,getdate()) --year  
  2. select datepart(mm,getdate()) --month  
  3. select datepart(dd,getdate()) --day  
  4. select datepart(hh,getdate()) --hour  
  5. select datepart(mi,getdate()) --min  
  6. select datepart(ss,getdate()) --sec  
  7.  

--取星期幾

  1. set datefirst 1  
  2. select datepart(weekday,getdate()) --weekday  
  3.  

--字符串時間

  1. select getdate() -- '03/11/12'  
  2. select convert(char,getdate(),101) -- '09/27/2003'  
  3. select convert(char,getdate(),102) -- '2003.11.12'  
  4. select convert(char,getdate(),103) -- '27/09/2003'  
  5. select convert(char,getdate(),104) -- '27.09.2003'  
  6. select convert(char,getdate(),105) -- '27-09-2003'  
  7. select convert(char,getdate(),106) -- '27 Sep 2003'  
  8. select convert(char,getdate(),107) --'Sep 27, 2003'  
  9. select convert(char,getdate(),108) --'11:16:06'  
  10. select convert(char,getdate(),109) --'Sep 27 2003 11:16:28:746AM'  
  11. select convert(char,getdate(),110) --'09-27-2003'  
  12. select convert(char,getdate(),111) --'2003/09/27'  
  13. select convert(char,getdate(),112) --'20030927'  
  14. select rtrim(convert(char,getdate(),102))+' '+(convert(char,getdate(),108)) -- '2003.11.12 11:03:41'  
  15.  

--整數時間

  1. select convert(int,convert(char(10),getdate(),112)) -- 20031112  
  2. select datepart(hh,getdate())*10000 + datepart(mi,getdate())*100 + datepart(ss,getdate()) -- 110646  
  3.  

--時間格式 "YYYY.MM.DD HH:MI:SS" 轉換為 "YYYYMMDDHHMISS"

  1. declare @a datetime,@tmp varchar(20),@tmp1 varchar(20)  
  2. select @a=convert(datetime,'2004.08.03 12:12:12')  
  3. select @tmp=convert(char(10),@a,112)  
  4. select @tmp  
  5. select @tmp1=convert(char(10),datepart(hh,@a)*10000 + datepart(mi,@a)*100 + datepart(ss,@a))  
  6. select @tmp1  
  7. select @tmp=@tmp+@tmp1  
  8. select @tmp  
  9.  

--當月最後一天

  1. declare  
  2. @tmpstr varchar(10)  
  3. @mm int,  
  4. @premm int,  
  5. @curmmlastday varchar(10)  
  6. begin  
  7. select @mm=datepart(month,getdate())--當月  
  8. select @premm=datepart(month,dateadd(month,-1,getdate())) --上個月  
  9. if (@mm>=1 and @mm<=8)  
  10. select @tmpstr=convert(char(4),datepart(year,getdate()))+'.0'+convert(char(1),datepart(month,dateadd(month,1,getdate())))+'.'+'01'  
  11. else if (@mm>=9 and @mm<=11)  
  12. select @tmpstr=convert(char(4),datepart(year,getdate()))+'.'+convert(char(2),datepart(month,dateadd(month,1,getdate())))+'.'+'01'  
  13. else  
  14. select @tmpstr=convert(char(4),datepart(year,dateadd(year,1,getdate())))+'.0'+convert(char(1),datepart(month,dateadd(month,1,getdate())))+'.'+'01'  
  15. select @curmmlastday=convert(char(10),dateadd(day,-1,@tmpstr),102) --當月最後一天  
  16. end  
  17.  
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved