2 分で読むことができます。

【Looker】 LookMLの動的パラメータを活用したSQL

執筆者 shochan 更新日時 2024年12月26日

目次

1. はじめに

今回はparameterを使用して動的に日付範囲を指定し、現在の期間と前年同期間の売上データを比較するSQLを用意しました。 LookMLのparameterは、ユーザーがダッシュボードやExplore(データ探索)で選択可能な値を指定するためのフィールドです。

これにより、ユーザーは分析やクエリの動的な変更が可能になります。

parameterは基本的には、dimensionmeasureと組み合わせて使用され、値に応じてクエリの条件や計算内容を変更できます。

2. 準備

 

まずはparameterを使ってみましょう。詳しくは3で説明します。

parameterを活用することで、開始日と終了日を指定し、WHERE句でデータを絞り込むことができます。例えば、ユーザーが指定した日付範囲に基づいて、対象データを動的にフィルタリングできます。

ただし、フィルターが設定されていない場合、parameterの値が空(NULL)のままとなり、WHERE句に指定された条件が成立せず、クエリ結果が得られない形になります。

具体的には、SQLの該当部分にNULLが挿入されるため、結果が空白になることに注意が必要です。

3. 詳細

本題に移りたいと思います!

特に難しいことはしていなく、よく見るSQLなのですが、このSQLにおいてparameterは非常に重要な役割を担っています!

WHERE句に注目してください!このWHERE句で指定しているparameterを使うことで、ユーザーが動的に分析対象の日付範囲を指定できるようになっています。

TO_DATE("Sales_Date", 'YYYY/MM/DD') BETWEEN{% parameter target_date_start %}
AND {% parameter target_date_end %}

※この時、parametertarget_date_startとtarget_date_end を指定していますが、

下記のようにparameterを設定しないといけません。

#################### Parameters ####################
parameter: target_date_start {
label: "開始日"
type: date
}

parameter: target_date_end {
label: "終了日"
type: date
}

このように、parameter を指定することで、クエリはその期間に応じた売上データを動的に取得できます!

日付範囲を変更すると、それに応じて前年同期間も自動的に調整されます。

                     結果

赤括弧で囲ってある部分が今回parameter で指定した部分になります。

この売上範囲を変更すると、下の画像のように動的にその期間に応じた結果になります。

3. おわりに

parameterは、SQLクエリの柔軟性を大幅に向上させる強力な機能です。

特に以下のような場面で効果を発揮します:

  • ユーザーが直接条件を変更したい場合
  • 期間や条件が頻繁に変わる分析

今回のSQLに限らず、さまざまなシーンで活用可能なため、分析の効率化やクエリ管理の簡素化に非常に役立つツールです。

参考

【Google公式のヘルプページ】

parameter

https://cloud.google.com/looker/docs/templated-filters?

https://cloud.google.com/looker/docs/reference/param-field-parameter

BIツールを体験してみませんか?

INSIGHT LABでは、BIツールの無料紹介セミナー(動画)を配信しています。初めてBIツールをご利用される方を対象に、BIツールの概要や、複数あるBIツールの違いについて分かりやすくご説明いたします。

セミナー一覧はこちら

shochan

執筆者 shochan

 

最新記事