目次
今回は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