Sql Server日付時間関数

2158 ワード

SQLデータベースでは、Sql Server日付時間関数という関数があります.これはSql Serverが日付と時間を処理するのに最もよく使われる関数です.以下では、このような関数について説明します.
Sql Server日付と時間関数:
         :dateadd(month,1,getdate())

.現在のシステムの日付、時刻
    select getdate() 
2.dateadd指定した日付に時間を加えた上で、新しいdatetime値を返します.たとえば、日付に2日間select dateadd(day,2,'2004-10-15')--戻ります.2004-10-17 00:00:00.000
3.datediffは、2つの指定された日付にまたがる日付と時間境界数を返します.select datediff(day,'2004-09-01','2004-09-18')--戻り:17
4.datepartは、指定された日付を表す指定された日付部分の整数を返します.SELECT DATEPART(month,'2004-10-15')--戻り10
5.datename指定日の指定日部分を表す文字列SELECT datename(weekday,'2004-10-15')--戻り:金曜日
6.day()、month()、year()--datepartと照らし合わせることができます
select現在日=convert(varchar(10)、getdate()、120)、現在時間=convert(varchar(8)、getdate()、114)
select datename(dw,'2004-10-15')
select本年何週目=datename(week,'2004-10-15')、今日は週数=datename(weekday,'2004-10-15')
Sql Server日付関数パラメータ/機能GetDate()は、システムの現在の日付と時刻DateDiff(interval,date 1,date 2)を返します.intervalで指定した方法で、date 2とdate 1の2つの日付の差を返します.date 2-date 1 DateAdd(interval,number,date)はintervalで指定した方法でnumberの後の日付DatePart(interval,date)を加えて日付dateに戻ります.interval指定部に対応する整数値DateName(interval,date)は日付date、interval指定部に対応する文字列名を返します
パラメータintervalの設定値は以下の通りです.
値略語(Sql Server)(AccessとASP)説明Year Yyyyyy年1753~9999 Quarter Qqシーズン1~4 Month Mm月1~12 Day of year Dy 1年の日数、1年目の何日目1-366 Day Dd日、1-31 Weekday Dw 1週間の日数、1週間目の何日目1-7 Week Wk ww週、1年目の週0~51 Hour Hh時0~23 Minute Min分0~59 Second Ss s秒0~59 Millisecond Ms-ミリ秒0~999
アクセスとaspではdate()とnow()でシステム日付時間を取得する.このうちDateDiff,DateAdd,DatePartも同様にAccessやaspに用いられ,これらの関数の使い方も同様である.
Sql Server日付関数の例:1.GetDate()sql server用:select GetDate()
2.DateDiff('s','2005-07-20','2005-7-25 22:56:32')戻り値514592秒DateDiff('d','2005-07-20','2005-7-25 22:56:32')戻り値5日間
3.DatePart('w','2005-7-25 22:56:32')戻り値が2である月曜日(日曜日は1,土曜日は7)DatePart('d','2005-7-25 22:56:32')戻り値が25である25番DatePart('y','2005-7-25 22:56:32')戻り値が206であるこの年の206日目DatePart('yyyyy','2005-7-25 22:56:32')戻り値が2005である2005年