[SQL] MSSQL 時間函數

取時間變數 , 抓今天的變數來做查詢條件

 

a.   將今天轉成七碼 民國年月日

   select @wDate = CONVERT (VARCHAR(7), GETDATE(),12 )+0890000

   2007/4/16 =>960416

   算出n天前的年月日

   DECLARE  @wDATE VarChar(7),@n int

   SET @n = 45

   select @wDate = CONVERT (VARCHAR(7), GETDATE()-@n,12 )+0890000

   2007/4/16 45天前 => 960302

B. 轉成 YYYYMMDD 

select  Replace (  convert(varchar(10),getdate(),102) ,’.’ ,”)

c. 取目前週數 SELECT datename(week, GetDate( )  )

D. 取目前月數 SELECT month(GetDate( ) )

    取目前月數 MM (兩位-補零) 

    SELECT substring ( CAST(month(GetDate( ) )+100 AS varchar(3))  , 2, 2)

E. 取得目前年月 (YYYYMM ) select  year (getdate())*100+month(GetDate( ) )

F. 取得下個月 , ex 要找出次月壽星 , 避免跨年度跳出 13月 用內建函數加一個月

SELECT month ( DATEADD(month, 1, GetDate( ) )) 

 

想查詢完整的列表與說明可以到 MSDN 的 Transact-SQL Reference 去查詢 CAST and CONVERT 的詳細說明。 

分類未分類

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料