SQL辞典

【SQL日付関数】DATEADD – 日付(日時)を加算する(SQL Server)

投稿日:2009年9月7日 更新日:

SQL ServerではDATEADD関数を使って、日付型の値に日時を加算する事ができます。

構文:

DATEADD(element, value, target)

targetにvalueで指定した値を加算する。elementにvalueの日付要素を記述する。日付要素は以下のようなものがある。
year(yy or yyyy) : 年
quarter(qq or q) : 四半期
month(mm or m) : 月
dayofyear(dy or y) : 年始からの日数
day(dd, d) : 日
week(wk, w) : 週
weekday(dw) : 曜日
hour(hh) : 時
minute(mi or n) : 分
second(ss) : 秒
millisecond(ms, s) : ミリ秒

使用例:birthday列の値の20日後の日付を求める。

SELECT birthday, DATEADD(day, 20, birthday) FROM tbEmpTable;

birthday               DATEADD(day, 20, birthday)
————————————————————
1970-08-01 00:00:00.000    1970-08-21 00:00:00.000

使用例:birthday列の値に14時間を加算する。

SELECT birthday, DATEADD(hour, 14, birthday) FROM tbEmpTable;

birthday               DATEADD(hour, 14, birthday)
———————————————————–
1970-08-01 00:00:00.000    1970-08-01 14:00:00.000

使用例:birthday列の値に2週間分の日付を加算する。

SELECT birthday, DATEADD(week, 2, birthday) FROM tbTestTable;

birthday              DATEADD(week, 2, birthday)
———————————————————-
1970-08-01 14:00:00.000    1970-08-15 14:00:00.000

SQLコマンド辞典に戻る

広告

広告

-SQL辞典


comment

関連記事

no image

【SQL日付関数】MONTHS_BETWEEN – 日付の差を月単位で取得する (Oracle)

Oracleで2つの日付の差を月単位で取得するには、MONTHS_BETWEEN関数を取得する。注意点はMONTH_BETWEENではなく、MONTHS_BETWEENというようにMONTHが複数形で …

no image

【SQL日付関数】SYSDATE – 現在の日付を取得する(Oracle)

Oracleで、現在の日付を取得するにはSYSDATE関数を使います。Oracleの場合、SYSDATEに括弧は不要ですのでご注意を(例:SYSDATE()はエラーになる)。SQL Serverの場合 …

no image

【SQL文字列関数】CHARINDEX – 文字列の位置を求める(SQL Server)

SQL ServerのCHARINDEX関数は文字列の位置を返します。例えば、「Windows」という文字列からdの位置を求めると4となります。sの位置は7となります。大文字小文字の区別はありません。 …

no image

【SQL日付関数】DATEPART – 日付要素を数値で取得する(SQL Server)

SQL Serverでは、DATEPART関数を使って日付値から指定した日付要素を数値で取得する事ができます。 文法: DATEPART(element, value) valueで指定した日付値から …

no image

【SQL集計関数】STDDEV、STDEV – 標準偏差を求める(SQL Server、Oracle)

SQL ServerやOracleで標準偏差(Standard Deviation)を求めるにはSTDDEVもしくはSTDEVを使います。標準偏差とは、データの散らばりの度合いを表し、標準偏差の値が小 …

広告

転職