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変換関数】NULLIF – 等しい場合にNULLを返す(Oracle、SQL Server)

NULLIF関数は2つの引数を比較して、2つの引数が等しい場合はNULLを返します。等しくない場合は、1つ目の引数を返します。Oracle、SQL Serverなどで利用できます。 構文: NULLI …

no image

【SQL日付関数】EXTRAC – 日付から任意の日付要素を取得する (Oracle)

Oracleで、日付値から任意の日付要素(年、月、日など)を取得するにはEXTRACT関数を使います。例えば、EXTRACT関数を使えば、2008-09-22という日付値から、月を取得すると09という …

no image

【SQL文字列関数】REPLACE – 文字列の置換(Oracle、SQL Server)

文字列のある文字を、別の文字列に置換するにはREPLACE関数を使用します。 文法: REPLACE(word, x, y) wordからxを検索し、それをyに置換する。 使用例:メールアドレスのドメ …

no image

【SQL変換関数】DECODE – 値を変換する(Oracle)

OracleではDECODE関数を使って、値を変換する事ができます。使い方はCASE命令と似ています。CASE命令で書き換える事も可能です。 文法: DECODE( x, target, new_va …

no image

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

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

広告

転職