【初心者〜実務対応】Tableau DATETRUNC関数の使い方と応用例|月初・週初・月次集計を徹底解説

DATETRUNC関数は指定した日時単位で日時を「切り捨て」、集計の粒度を揃える関数です。月初や週初など期間ベースの分析に非常に便利です。

目次

書き方・構文ルール|DAYやMONTHの切り捨て方法

基本構文は次の通りです。

DATETRUNC("単位", [日付フィールド])

例)本日を日単位で切り捨て(00:00:00に)

DATETRUNC("day", NOW())

切り捨て単位一覧|weekやquarterの挙動まとめ

単位説明注意点
year年初(1月1日)に切り捨て
quarter四半期初に切り捨てQ1=Jan-Mar、Q2=Apr-Jun…
month月初(1日)に切り捨て
week週初に切り捨て(日曜または月曜)デフォルト週の開始日は日曜(設定変更可)
day日初(00:00)に切り捨て
hour時間の分以下を切り捨て
minute秒以下を切り捨て
second秒未満(ミリ秒など)は対象外

DATE型とDATETIME型の違い

  • DATE型:日付のみ管理(例:2023-06-14)
  • DATETIME型:日時情報含む(例:2023-06-14 14:30:00)

NOW()とTODAY()の違いと影響

  • NOW()は現在日時(DATETIME型)
  • TODAY()は現在日付(DATE型、00:00固定)

違いを理解しないと、DATETRUNC使用時に意図しない結果が生じます。

よくある誤解と失敗パターン

「dayofyear」は存在しない?

DATETRUNCで「dayofyear」を指定すると「day」と同じになります。「年初からの日数」には使えません。

期間フィルタとしての誤解

DATETRUNCは開始時点を返すのみで終了時点設定はできません。

実務での使い方(月次/週次/更新日フィルタ)

月次売上推移グラフを作成する例

DATETRUNC("month", [売上日])

棒グラフで売上の月間推移を視覚化します。

前年同月売上比較

DATETRUNC("month", DATEADD("year", -1, [売上日]))

前年比を即座に比較できます。

本日更新データを抽出

DATETRUNC("day", NOW()) = DATETRUNC("day", [更新日時])

DATEPARTとの違い|混乱を防ぐ関数の使い分け

  • DATETRUNC:日時を指定単位で切り捨て(開始時点)
  • DATEPART:指定単位の数値だけを抽出(年→2023)

よくある質問とTips集

Q1:月末を求めたい場合は?

DATEADD("day", -1, DATEADD("month", 1, DATETRUNC("month", [日付])))

Q2:週の開始を月曜にしたい場合は?
Tableauの設定から変更可能です。

まとめ:分析の第一歩としてのDATETRUNC

DATETRUNCを正しく理解することが、Tableau分析精度を飛躍的に高めます。実務シーンでの応用を繰り返し試し、自在に使いこなしていきましょう。

Comment

コメントする

目次