目次
今回はparameter
を使用して動的に日付範囲を指定し、現在の期間と前年同期間の売上データを比較するSQLを用意しました。 LookMLのparameter
は、ユーザーがダッシュボードやExplore(データ探索)で選択可能な値を指定するためのフィールドです。
これにより、ユーザーは分析やクエリの動的な変更が可能になります。
parameter
は基本的には、dimension
やmeasure
と組み合わせて使用され、値に応じてクエリの条件や計算内容を変更できます。
まずはparameter
を使ってみましょう。詳しくは3で説明します。
parameter
を活用することで、開始日と終了日を指定し、WHERE
句でデータを絞り込むことができます。例えば、ユーザーが指定した日付範囲に基づいて、対象データを動的にフィルタリングできます。
ただし、フィルターが設定されていない場合、parameter
の値が空(NULL
)のままとなり、WHERE
句に指定された条件が成立せず、クエリ結果が得られない形になります。
具体的には、SQLの該当部分にNULL
が挿入されるため、結果が空白になることに注意が必要です。
本題に移りたいと思います!
特に難しいことはしていなく、よく見るSQLなのですが、このSQLにおいてparameter
は非常に重要な役割を担っています!
WHERE
句に注目してください!このWHERE
句で指定しているparameter
を使うことで、ユーザーが動的に分析対象の日付範囲を指定できるようになっています。
TO_DATE("Sales_Date", 'YYYY/MM/DD') BETWEEN{% parameter target_date_start %}AND {% parameter target_date_end %}
※この時、parameter
でtarget_date_startと
target_date_end
を指定していますが、
下記のようにparameter
を設定しないといけません。
#################### Parameters ####################
parameter: target_date_start {
label: "開始日"
type: date
}
parameter: target_date_end {
label: "終了日"
type: date
}
このように、parameter
を指定することで、クエリはその期間に応じた売上データを動的に取得できます!
日付範囲を変更すると、それに応じて前年同期間も自動的に調整されます。
結果⇓
赤括弧で囲ってある部分が今回parameter
で指定した部分になります。
この売上範囲を変更すると、下の画像のように動的にその期間に応じた結果になります。
parameter
は、SQLクエリの柔軟性を大幅に向上させる強力な機能です。
特に以下のような場面で効果を発揮します:
今回のSQLに限らず、さまざまなシーンで活用可能なため、分析の効率化やクエリ管理の簡素化に非常に役立つツールです。
【Google公式のヘルプページ】
parameter
https://cloud.google.com/looker/docs/templated-filters?
https://cloud.google.com/looker/docs/reference/param-field-parameter