
今回は「日付を特定の単位に切り捨てる」ことが出来る DATETRUNC関数について解説したいと思う。
このDATETRUNC関数は私が実務でTableauを扱う際も比較的よく使う日付関数だ。
使い方を覚えてしまえば、きっと実務で色々と役に立つはずなので、本記事をぜひ参考にして欲しい。
DATETRUNC関数とは?
DATETRUNC関数は前述の通り、日付を特定の単位に切り捨てる(丸める)ことができる関数だ。
例えば、下図のように日付データを月で丸めたい(日付部分を切り捨てたい)という時に使う。

DATETRUNC関数で月の単位に日付を丸める指定をすると、下記のように日付を切り捨てることができる。

2017年1月〜日の各日が、全て「2017年〜月1日」に変わっているのがお分かりいただけると思う。
このように、DATETRUNCは特定の単位(年や月、日)などに日付データを統一したい時によく使う。
ちなみに、TRUNCは「切り捨てる」という意味の英単語「truncate」の略だから
- DATE=日付
- TRUNC=切り捨てる
つまり、DATE+TRUNC=「日付」を「切り捨てる」という意味であることがわかる。
個人的には関数がわかりにくく感じるのは、英単語の意味がわかっていない時が多い。
そのため、このように関数を日本語に訳してみると覚えやすくなるはずだ。
DATETRUNC関数の使用方法
DATETRUNC関数は計算フィールドを作成して使用する。
指定の仕方は下図の通りだ。
私が実務で扱うデータでは月に丸めることが多く、オプションの[start_of_week]は正直あまり使わない(笑)

具体的にサンプルスーパーストアのオーダー日を月単位に丸める(切り捨てる)際は下図のように指定する。

実際にデータの表示は下図のようになる。

月以下の日が全て切り捨てられ、1日に統一されているのがお分かりいただけると思う。
DATETRUNC関数の使用シーン
DATETRUNC関数は下記のようなシーンでよく使う。
- その日付データの月初や年初などのデータを取得したい時
- 年月日のデータを年月にまとめたい時
- 対象のデータが当月かどうか判定したい時(TODAY関数と組み合わせる)
- 日付データをシンプルな計算式で処理したい時(Year関数やMonth関数などを使用せずに)
DATEADD関数やTODAY関数と組み合わせて、DATETRUNC関数を使用する場面が多いので是非覚えてみて欲しい。
まとめ
今回はDATETRUNC関数について紹介した。
- DATETRUNC関数とは、日付を指定した単位(年・月・日など)に切り捨てて統一できる関数。 
- 計算フィールドで - DATETRUNC('month', [オーダー日])のように指定して使用。
- 月初や年初を取得したい時、日付を年月単位にまとめたい時、などに便利 
- DATEADDやTODAY関数と組み合わせるのは実務でよく使う 
日付関数の中でもDATETRUNC関数はよく使うので、実際にTableauで試してみながら習得して欲しい。
他の日付関数や日付を操作する方法は下記記事で紹介しているのでこちらも見てもらえると嬉しい。




