期間比較(Period-over-Period)するのに、要件によって、いろんなやり方がありますが、この記事では、ダッシュボードのフィルタで特定の月を指定した際に、指定した月から過去X年分のデータを裏側で取得し、月での期間比較をできるようにします。
最終アウトプットはこのようになります。
ダッシュボードのフィルタにて、2021年5月を指定しています。(ちなみダッシュボードネクスト・・URLにdashboard-nextと入っている方です・・から、フィルタにて、このような柔軟な時間指定ができるようになりました。)
LookML
1.時間のfilterフィールドを作成します
このfilterフィールドの値を元に、次のステップで過去X年を計算していきます。ダッシュボード上では、このfilterフィールドに、時間のフィルターをかけてください
filter: current_date_range {
type: date
label: "1. Current Date Range"
}
過去X年を計算するdimensionと、日付がこの過去X年の範囲内であるかを判定するdimensionを作成します。今回の例では、過去2年なので、24ヶ月で差分を取るように書いていますまた、liquid変数`{% date_start current_date_range %}`は、1のフィルタで選択された期間の開始日を取得するものになります。もし、指定されたendを取得したい場合は、`{% date_end current_date_range %}`を使います。
dimension_group: 24months_period {
type: time
timeframes: [month,date]
sql: dateadd(month, -24 , {% date_start current_date_range %}) ;;
}
dimension: is_24_month {
type: yesno
sql: ${created_date} >= ${24months_period_date} and ${created_date} < dateadd('month', 1, {% date_start current_date_range %});;
}
完成