http://winofsql.jp/VA003334/access050909140710.htm より引用
日付関連処理が多いのに、いつももたついているためメモ
select GETDATE() + 1 as 日数加算1 ,DATEADD(d, 1, GETDATE()) as 日数加算2 ,DATEADD(m, -1, GETDATE()) as 月数加算 ,DATEADD(yy, 1, GETDATE()) as 年数加算 ,DATEADD(ww, -1, GETDATE()) as 週数加算 ,DATEDIFF(d, '2005/01/01', GETDATE()) as 経過日数 ,DATEPART(d, GETDATE()) as 日 ,DATEPART(y, GETDATE()) as 年間通算日 ,DATEPART(hh, GETDATE()) as 時 ,DATEPART(n, GETDATE()) as 分 ,DATEPART(s, GETDATE()) as 秒 ,DATEPART(ms, GETDATE()) as milli秒 ,DATEPART(m, GETDATE()) as 月 ,DATEPART(w, GETDATE()) as 曜日 ,DATEPART(ww, GETDATE()) as 週 ,DATEPART(yyyy, GETDATE()) as 年 ,CONVERT(varchar, GETDATE(),120) as 日付編集1 ,CONVERT(varchar, GETDATE(),111) as 日付編集2 ,CONVERT(varchar, GETDATE(),11) as 日付編集3 ,CONVERT(varchar, GETDATE(),112) as 日付編集2 ,CONVERT(varchar, GETDATE(),12) as 日付編集3 from table結果は下記の通り
●日数加算1 | ●日数加算2 | ●月数加算 | ●年数加算 | |
2008/03/26 10:52:30 | 2008/03/26 10:52:30 | 2008/02/25 10:52:30 | 2009/03/25 10:52:30 | |
●週数加算 | ●経過日数 | ●日 | ●年間通算日 | |
2008/03/18 10:52:30 | 1179 | 25 | 85 | |
●時 | ●分 | ●秒 | ●milli秒 | |
10 | 52 | 30 | 173 | |
●月 | ●曜日 | ●週 | ●年 | |
3 | 3 | 13 | 2008 | |
●日付編集1 | ●日付編集2 | ●日付編集3 | ●日付編集2 | ●日付編集3 |
2008-03-25 10:52:30 | 2008/03/25 | 08/03/25 | 20080325 | 080325 |