今回は対象の日付データに年数や日数を加えることができるDATEADD関数について解説したいと思う。
DATEADD関数とは?
DATEADD関数は前述の通り、対象の日付データに対して指定した日付単位(1年後や3ヶ月後など)を加えた日付を取得することができる関数だ。
例えば、「オーダー日の1ヶ月後の日にちを取得したい」という時やDATETRUNC関数と組み合わせて「注文日の翌月末の日付を取得したい!」という時にDATEADD関数は便利だ。
DATEADD関数は下記のように分解して翻訳してみると関数の意味が理解しやすくなる。
- DATE=年月日(日付)
- ADD=足す(加える)
つまり、「DATEADD=年月日を加えることができる関数(日付を足し算する関数)」ということだ。
ADDとなっているから「足すことしかできない?」と勘違いしがちだが、実は指定した日付から年数や日数をマイナスすることもできる。
下記はサンプルスーパーストアのデータにおいて、DATEADD関数でオーダー日の1ヶ月後の日付を取得した例だ。
オーダー日の1ヶ月後の日付がそれぞれ表示されているのがおわかりいただけると思う。
このようにDATEADD関数は対象の日付データに対して任意の日数を加えたり、引いたりすることができる。
DATEADD関数の使用方法
DATEADD関数は他の日付関数と同様に計算フィールドを作成して使用する。
指定の仕方は下図の通りだ。
具体的に先ほどのサンプルスーパーストアでオーダー日の1ヶ月後の日付を取得する場合は下図のように指定する。
上記のように指定して実際にビューに表示されたのが下図だ。
オーダー日の1ヶ月後の日付が算出されているのがお分かりいただけると思う。
DATEADD関数の利用シーン
DATEADD関数は様々な場面で利用される。
単独で使う場合は例えば、会計年度の開始月を変更した際の年度の調整で使ったことがある。
個人的にはDATEADD関数は単独で使うよりも下記関数と組み合わせて使うことが多い印象だ。
- 条件によって値を出し分けるIF関数
- 日付を切り捨てるDATETRUNC関数
- 期間を算出するDATEDIFF関数
例えば、DATEDIFF関数と組み合わせて、生年月日からの年齢を算出をしたり、DATETRUNC関数と組み合わせて、
「月末の単一日付指定(3月31日や4月30日などを表示したい時)」
などに利用される。
まとめ
DATEADD関数によって日付データがどのように変わるのかを把握しておくことは実務で日付データを扱う際に結構役に立つ。
「あっこれはDATEADD関数使えば、表現できるんじゃないか?」
と思いつくことも多々あるので、他の日付関数(DATDIFF関数やDATETRUNC関数など)と合わせてぜひ習得してほしい。
Tableauの他の関数は下記にまとめているので、活用してみてもらえると嬉しい。