Looker の前期比メジャー

期間比較分析(PoP 分析)とは、現在の何かを測定し、それを過去の同時期の同じ測定値と比較する分析手法である。

のためにPoP 対策を支持する方言Looker の開発者は、LookML プロジェクトに PoP メジャーを追加することで、対応する Looker Explore で PoP 分析を有効にできます。

例えば、次の Looker Explore クエリは、当月に作成された注文数と、昨年作成された注文数、昨年との差、および昨年からの変化率を示す PoP メジャーを表示します。値を抜き取り検査することで、前年比の比較を検証できます。例えば、2012-03Orders Last Year の値は、2011-03Orders Count の値と同じです。

Looker Explore によると、2012 年 3 月の昨年の注文数は 89 件で、2011 年 3 月の注文数も 89 件となっています。

LookML プロジェクトに PoP メジャーを追加するには、Looker 開発者は measuretype: period_over_period を作成し、このページの次のセクションで説明されている サブパラメーター を含める必要があります。

例えば、前年度の注文数を表示する PoP メジャーの LookML は次のようになります。

  measure: order_count_last_year {
    type: period_over_period
    description: "Order count from the previous year"
    based_on: orders.count
    based_on_time: orders.created_year
    period: year
    kind: previous
  }

この PoP 指標には、以下の属性があります。

  • これはbased_on: orders.countで定義されているため、PoP 指標は前の期間の注文数に関するデータを提供します。
  • これはkind: previousと定義されており、前の期間のカウント値を提供することを意味します(前の期間からの注文数の差や、前の期間からの注文数の変化率を提供するのとは異なります)。
  • これはperiod: yearで定義されているため、前年の同期間における注文数を提供します。

PoP 測定のサブパラメータ

PoP 指標は、以下のセクションで説明されているサブパラメータを含む measure または type: period_over_period です。

記載されているとおりPoP 対策を用いたクエリの探索このセクションでは、PoP メジャーは、PoP メジャーの LookML 定義と Explore クエリのフィールドの両方に基づいて値を計算します。そのため、LookML で PoP メジャーを作成する際には、以下のベストプラクティスに従う必要があります。

  • Explore のユーザーに PoP メジャーの期間を示す情報を、PoP メジャーの名前またはメジャーの description サブパラメーターのいずれかで提供します。
  • Explore のユーザーに PoP メジャーの based_on メジャーを示す情報を、PoP メジャーの名前またはメジャーの description サブパラメーターのいずれかで提供します。

例えば、次の PoP メジャーは order_count_last_year という名前で、前年の注文数を示すメジャーであることをユーザーに知らせる説明が含まれています。

  measure: order_count_last_year {
    type: period_over_period
    description: "Order count from the previous year"
    based_on: orders.count
    based_on_time: orders.created_year
    period: year
    kind: previous
  }

based_on

based_on フィールドを使用して、PoP メジャーの基となる LookML メジャーを指定します。例えば、PoP の測定基準を orders.count フィールドに設定するには、次のように入力します。

    based_on: orders.count

orders.count に基づく PoP 指標は、以前の期間の注文数に関する情報を提供するため、現在の期間と以前の期間の売上数を比較できます。

based on フィールドで指定する LookML メジャーは、以下のいずれかのタイプのメジャーである必要があります。

based_on_time

based_on_time サブパラメーターを使用して、Looker が PoP メジャー値を計算するために使用できる時間フィールドを指定します。この時間フィールドには、以下のいずれかを指定できます。

  • 時間ベースのディメンションbased_on_time サブパラメータで時間ベースのディメンションを指定した場合、ユーザーは PoP 指標を使用するすべてのクエリで、まったく同じ時間ベースのディメンションを含める必要があります。また、期間ベースのディメンションの期間は、PoP 指標の period 値以下である必要があります。たとえば、PoP 指標が based_on_time: created_month で定義されている場合、PoP 指標の period 値は week または date にできません。
  • type: time ディメンション グループの次のいずれかのタイムフレーム。

    • year
    • fiscal_year
    • month
    • fiscal_quarter
    • quarter
    • week
    • date
    • raw
  • type: custom_calendar ディメンション グループの次のいずれかのタイムフレーム

    • custom_date
    • custom_period
    • custom_quarter
    • custom_season
    • custom_week
    • custom_year

based_on_time サブパラメータでディメンショングループの期間を指定する場合、使用する特定の期間は関係ありません。PoP 指標が type: time のディメンショングループを指すようにするだけで、PoP 指標はディメンショングループの基盤となるタイムスタンプを使用できます。type: duration のディメンショングループからタイムフレームを指定することはできません。期間タイプのディメンショングループはサポートされておらず、データ探索でランタイム エラーが発生します。

kind

kind パラメータを使用して、PoP 指標で前期間に対して行う計算の種類を指定します。kind には、次のいずれかの値を指定できます。

  • previous:(デフォルト)前の期間の値。
  • difference: 期間の差(現在の期間から前の期間を差し引いた値)。
  • relative_change: 前の期間からの変化率(%)。変化率は以下の式で計算されます。

    $$ relativeChange = (current - previous)/previous $$

period

period サブパラメータを使用して、PoP 指標のケイデンス(比較で遡る期間)を指定します。たとえば、period: year で定義された PoP 指標は、前年の値を表示します。月ごとの注文数に対して Explore クエリを実行すると、period: year PoP メジャーには前年同月の値が表示されるため、2025 年 11 月の注文数を 2024 年 11 月の販売数と比較できます。

period サブパラメータは次の値をサポートしています。

  • year
  • fiscal_year
  • quarter
  • fiscal_quarter
  • month
  • week
  • date

custom_calendar_period

PoP 指標がカスタム カレンダーに基づいている場合(PoP 指標の based_on_time パラメータでtype: custom_calendar のディメンション グループの期間が指定されている場合)、period パラメータではなく custom_calendar_period パラメータを使用する必要があります。

custom_calendar_period サブパラメータを使用して、PoP 指標のケイデンス(比較で遡る期間)を指定します。たとえば、custom_calendar_period: custom_year で定義された PoP 指標は、前年の値(カスタム カレンダーで定義されている値)を表示します。custom_monthly の注文数に対して Explore クエリを実行すると、custom_calendar_period: custom_year PoP 指標には前年同月の値が表示されるため、2026 年のカスタム月の注文数と 2025 年の同じカスタム月の販売数を比較できます。

custom_calendar_period サブパラメータは次の値をサポートしています。

  • custom_date
  • custom_period
  • custom_quarter
  • custom_season
  • custom_week
  • custom_year

カスタム カレンダーを使用する PoP 指標の作成の詳細については、カスタム カレンダーで PoP 指標を使用するをご覧ください。

value_to_date

value_to_date サブパラメータを使用して、クエリの実行時に現在の期間で経過した時間を使用して Looker が PoP 指標の値を計算するかどうかを指定します。value_to_date サブパラメータは no(デフォルト)または yes にできます。

  • 値が no の場合、データを集計するときに期間ウィンドウ全体が想定されます。
  • yes は、現在の期間で観測された時間を計算し、PoP 指標に適用します。

たとえば、value_to_date: yes で定義された前月比の PoP 指標を使用して、6 月 6 日の 13:10:00 に PoP 指標と日付のタイムフレーム ディメンションを含む Explore クエリを実行すると、Looker は 6 月 6 日に経過した時間(13 時間 10 分 0 秒)をクエリ内の各日付の計算に適用します。Looker は、各日付の最初の 13 時間 10 分間の値を返します。

value_to_date: no で定義された同じ PoP メジャーがあり、6 月 6 日の 13:10:00 に同じデータ探索クエリを実行した場合、Looker は各日付で使用可能なすべてのデータを使用して PoP の値を計算します。6 月 6 日から前月の 6 日までの値を比較しようとしている場合、6 月 6 日はまだ終了していないため、13:10:00 以降に追加のデータが表示される可能性があります。

value_to_date: yes が Explore クエリの結果にどのように影響するかについては、value_to_date が PoP 測定値に与える影響をご覧ください。

期間比較(PoP)指標を含むデータ探索クエリの要件で説明したように、期間比較(PoP)指標を含むデータ探索クエリを実行すると、クエリの最小期間の粒度が、期間比較(PoP)指標で使用される期間に自動的に適用されます。value_to_date: yes で定義された PoP メジャーを含む Explore クエリの場合、Looker はクエリ内の最小の時間枠ディメンションを取得し、クエリの実行時に経過した時間枠の割合を計算して、その割合を PoP メジャーのすべての値に適用します。

PoP 指標を使用してクエリを探索する

PoP 指標に対して実行される計算は、PoP 指標の LookML 定義と、Explore クエリ自体で指定された期間に基づいています。PoP 指標は、Explore クエリで選択された期間に合わせて計算を調整します。たとえば、PoP 指標が period: year で定義され、Explore クエリに orders.created_month 期間ディメンションが含まれている場合、PoP 指標は 2025 年 1 月と 2024 年 1 月を比較して、月ごとの値を計算します。年間の値を確認するには、PoP メジャーと orders.created_year 期間のみを使用してデータ探索クエリを実行する必要があります。

PoP 指標の period が、データ探索クエリで選択された期間とどのように相互作用するかの例を次に示します。

  • period: year で期間比較メジャーが定義されている場合に、四半期単位の期間で Explore クエリを実行すると、期間比較メジャーは前年の同じ四半期の値を返します(2025 年第 1 四半期と 2024 年第 1 四半期を比較)。
  • PoP メジャーが period: year で定義されていて、月単位の期間でデータ探索クエリを実行すると、PoP メジャーは前年同月の値を返します(2025 年 4 月と 2024 年 4 月を比較)。
  • PoP 指標が period: month で定義されていて、月単位の期間で Explore クエリを実行すると、PoP 指標は前月の値を返します(2025 年 3 月と比較した 2025 年 4 月)。

PoP 指標を含む探索クエリの要件

期間比較(PoP)メジャーは、PoP メジャーの LookML 定義と Explore クエリで選択したフィールドの両方に基づいて計算を行うため、PoP メジャーを含む Explore クエリには、少なくとも次のフィールドを含める必要があります。

  • PoP 指標。
  • PoP 指標に関連付けられた period に適した時間ディメンション。時間ディメンションは、Explore のフィールド ピッカーまたは Explore のフィルタからクエリに含めることができます。
    • PoP 指標クエリは、月、四半期、年などの日付以上の期間の粒度をサポートしています。同期比(PoP)指標のクエリでは、時間または分のタイムフレームのディメンションはサポートされていません。
    • PoP メジャーがディメンション グループのタイムフレームである based_on_time で定義されている場合、Explore クエリには、PoP メジャーの period パラメータで指定されているタイムフレーム以下のタイムフレームを使用する同じディメンション グループのタイムフレームを含める必要があります。ディメンション グループを Explore に含めるには、Explore のフィールド ピッカーからディメンション グループを選択するか、ディメンション グループでフィルタします。たとえば、PoP 指標の based_on_time 値が orders.created ディメンション グループの期間で定義され、PoP 指標が period: month で定義されている場合、Explore クエリには、orders.created_date など、1 か月以下の orders.created ディメンション グループの期間を含める必要があります。たとえば、1 年間の期間で月ごとの比較はできないため、Explore クエリの期間は一致するか、それより短くする必要があります。
    • 時間ベースのディメンションである based_on_time で PoP メジャーが定義されている場合、Explore のフィールド ピッカーからディメンションを含めるか、ディメンションにフィルタを指定することで、Explore クエリにまったく同じ時間ベースのディメンションを含める必要があります。時間ベースのディメンションは、PoP 指標の period パラメータで指定された期間と同じか、それより短い期間でなければなりません。たとえば、PoP 指標が based_on_time: created_date で定義され、PoP 指標が period: month で定義されている場合、Explore クエリには created_date ディメンションを含める必要があります。

PoP 指標がディメンション グループの期間である based_on_time で定義されている場合は、Explore クエリの期間に関する次の要件に注意してください。

  • Explore クエリの期間は、PoP 指標の period パラメータで指定された期間以下である必要があります。たとえば、PoP 指標の based_on_timeorders.created ディメンション グループの期間で定義され、PoP 指標が period: month で定義されている場合、Explore クエリには、orders.created_date など、1 か月以下の orders.created ディメンション グループの期間を含める必要があります。たとえば、1 年間の期間で前月比を比較することはできないため、Explore クエリの期間は短くする必要があります。
  • Explore クエリの期間自体にタイムスタンプ情報が含まれている必要があります。たとえば、ディメンション グループの yearmonthdate の期間は、実際のタイムスタンプ情報を提供します。一方、day_of_week の期間は、基盤となるタイムスタンプから抽象化され、Wednesday などの値を提供します。同様に、month_namemonth_numday_of_month などの期間自体にはタイムスタンプ情報がないため、PoP 指標で前の期間の値を計算するために使用することはできません。ただし、Explore クエリに date などのタイムスタンプを含めると、PoP メジャーにタイムスタンプ情報が提供され、それを使用して前の期間の値を計算できます。PoP 指標は date 期間情報を計算に使用できるため、Explore クエリに day_of_week 期間を含めることもできます。

Explore クエリでこれらの要件を満たしている限り、Explore クエリに他のフィールドと期間ディメンションを追加できますが、Explore クエリのすべての期間は、PoP 指標の period 期間以下である必要があります。PoP 指標を含む Explore クエリを実行すると、Looker はクエリの最小期間の粒度を PoP 指標で使用される期間に自動的に適用します。このページの冒頭に示されている Explore の例では、すべての PoP メジャーが LookML で period: year を使用して定義されています。つまり、エクスプローラ クエリで選択された期間(この場合は月単位の期間)に対して、PoP 指標は前年の同じ期間の結果を返します。

Explore で PoP メジャーでサポートされている期間を確認する場合は、クエリを実行せずにさまざまな期間をテストできます。Explore の [データ] セクションの [SQL] タブをクリックし、Explore のフィールド選択ツールからフィールドとフィルタを追加します。選択したフィールドとフィルタを使用して PoP 指標でクエリを計算できない場合、[SQL] タブに SQL を生成できないというメッセージが表示されます。

SQL を生成できないクエリを実行すると、[探索] ウィンドウにエラーの詳細と関連する LookML へのリンクが返されます。

カスタム カレンダーで PoP 指標を使用する

カスタム カレンダーを使用する PoP 指標を作成するには、次の操作を行う必要があります。

  • カスタム カレンダーをモデル化するビューファイルで、必要に応じて calendar_definition パラメータ ブロックに previous_ordinal_mapping パラメータ ブロックを含めます。Looker 26.8 以降では、previous_ordinal_mapping パラメータは省略可能です。Looker 26.8 以降では、カスタム カレンダーで Week 1 の前の週は Week 52、Day 1 の前の日は Day 364 と見なされます。カスタム カレンダーがこれに該当しない場合は、previous_ordinal_mapping パラメータ ブロックを使用する必要があります。
  • PoP 指標の LookML 定義の based_on_time パラメータで、type: custom_calendar のディメンション グループの年間の期間を指定します。
  • PoP メジャーの LookML 定義では、period パラメータではなく custom_calendar_period パラメータを使用します。

たとえば、カスタム カレンダー ディメンション グループと、カスタム カレンダーを使用する PoP メジャーの LookML は次のようになります。

dimension_group: cust_created {
    type: custom_calendar
    sql: {TABLE}.created_at;;
    based_on_calendar: cust_retail_calendar
    custom_timeframes: [custom_year, custom_quarter]

  }

measure: count_last_custom_year {
    type: period_over_period
    based_on: count
    based_on_time: cust_created_custom_year
    custom_calendar_period: custom_year
    kind: previous
  }

以降のセクションでは、さまざまな PoP 指標とデータ探索クエリの例を示します。

カウントを前年比および前月比の PoP 指標と比較する

total_births メジャーの例、type:timebirth ディメンション グループ、total_births メジャーに基づいて birth ディメンション グループを based_on_time フィールドとして使用する 2 つの PoP メジャーの LookML は次のとおりです。


  dimension_group: birth {
    type: time
    timeframes: [raw, time, date, week, month, quarter, year]
    sql: ${TABLE}.birth_date ;;
  }

  measure: total_births {
    type: sum
    sql: ${TABLE}.total_births ;;
  }

  measure: total_births_last_year {
    type: period_over_period
    kind: previous
    based_on: total_births
    based_on_time: birth_year
    period: year
    value_to_date: no
    value_format_name: decimal_0
  }

  measure: total_births_last_month {
    type: period_over_period
    kind: previous
    based_on: total_births
    based_on_time: birth_year
    period: month
    value_to_date: no
    value_format_name: decimal_0
  }

これらのフィールドについては、次の点に注意してください。

  • どちらの PoP 指標も kind: previous で定義されているため、どちらも前の期間の指標の値を提供します。
  • どちらの PoP 指標も value_to_date: no で定義されているため、どちらも期間全体(クエリの最小期間の粒度)の指標の値を計算します。
  • どちらの PoP 指標も based_on_time: birth_year で定義されているため、どちらも birth ディメンション グループの基盤となるタイムスタンプを使用します。
  • total_births_last_year PoP メジャーは period: year で定義され、total_births_last_month PoP メジャーは period: month で定義されます。

次の Explore クエリには、3 つの measure と birth_month ディメンションの期間が含まれています。

Looker Explore で、「出生月」、「総出生数」、「先月の総出生数」、「昨年の総出生数」の列を表示しています。2024 年 7 月の総出生数は 290,699 人で、これは 2024 年 6 月の総出生数と一致します。2024 年 7 月までの出生総数は 310,347 人で、これは 2023 年 7 月までの出生総数と一致します。

「探索」の結果について、以下の点にご注意ください。

  • Explore クエリの最小ディメンション時間枠はbirth_monthなので、PoP メジャーは月ごとの値を提供します。
  • 最新の月の行、2024-07 では、先月の総出生数 の値は、前月である 2024-06 の総出生数を示しています。これは、2024-06 行の Total Births の値を確認することで検証できます。2 つの値が一致します。
  • 最新の月の行である2024-07では、昨年の総出生数の値は、前年(2023 年)の同じ月(07)の総出生数を示しています。これは、2023-07 行の Total Births の値を確認することで検証できます。2 つの値が一致します。

value_to_dateが PoP 測定値にどのように影響するか

前の と同様に、ここでは total_births メジャーと birth ディメンション グループ type:time の LookML と、total_births メジャーに基づいており、birth ディメンション グループを based_on_time フィールドとして使用する 2 つの PoP メジャーを示します。しかし、この例では、total_births_last_year_value_to_date PoP 尺度は value_to_date: yes で定義され、total_births_last_year PoP 尺度は value_to_date: no で定義されます。

  dimension_group: birth {
    type: time
    timeframes: [raw, time, date, week, month, quarter, year]
    sql: ${TABLE}.birth_date ;;
  }

  measure: total_births {
    type: sum
    sql: ${TABLE}.total_births ;;
  }

  measure: total_births_last_year {
    type: period_over_period
    kind: previous
    based_on: total_births
    based_on_time: birth_year
    period: year
    value_to_date: no
    value_format_name: decimal_0
  }

  measure: total_births_last_year_value_to_date {
    type: period_over_period
    kind: previous
    based_on: total_births
    based_on_time: birth_year
    value_to_date: yes
    period: year
    value_format_name: decimal_0
  }

以下は、3 つのメジャーすべてとbirth_yearディメンションのタイムフレームを含む Explore クエリです。この Explore クエリは 6 月 4 日 16:25:08 に実行されました。これは value_to_date: yes PoP 指標にとって重要です。

Looker Explore で、「出生年」、「総出生数」、「昨年の総出生数」、「昨年の累計出生数」の列を表示しています。2024 年の出生総数は 3,581,036 人で、これは 2023 年の出生総数と一致します。昨年の出生数(2024 年現在までの値)は 1,743,505 です。

Explore の結果は、value_to_dateサブパラメータが PoP 指標の計算をどのように変更するかを示しています。

「探索」の結果について、以下の点にご注意ください。

  • 最新の年である 2024 の行の [Total Births Last Year] の値には、前年(2023 年)の合計出生数が表示されます。計算は、[2023] 行の [出生数の合計] の値を確認することで検証できます。2 つの値が一致します。
  • 最新の年(2024)の行では、[Total Births Last Year Value to Date] の値が [Total Births Last Year] の値よりも小さくなっています。これは、Explore クエリが 6 月 4 日の 16 時 25 分 8 秒に実行され、total_births_last_year_value_to_date PoP メジャーが value_to_date: yes で定義されているためです。Looker は、各年の 6 月 4 日の 16 時 25 分 8 秒までのデータのみを使用して年間の値を計算しました。

PoP 指標を含む Explore クエリのフィルタリング

PoP メジャーを含む Explore クエリをフィルタリングする場合は、次の点に注意してください。

  • フィルタリングは、PoP 指標を含む Explore クエリでサポートされています。ただし、PoP 指標自体でフィルタすることはできません。たとえば、birth_month ディメンションと total_birthstotal_births_last_yeartotal_births_last_month の PoP メジャーをクエリする最初の例のデータ探索では、total_birthstotal_births_last_yeartotal_births_last_month の PoP メジャーでクエリをフィルタできませんでした。
  • PoP メジャーの based_on_time パラメータに関連付けられているフィールドでフィルタリングする場合、フィルタの期間がクエリの期間よりも細かいと、PoP メジャーにはクエリの期間のフィルタ値部分の結果のみが表示されます。たとえば、orders.created_year ディメンションでクエリを実行し、1 月のクエリをフィルタすると、各年について PoP メジャーには 1 月の値のみが表示されます。これは、通年の結果と誤解される可能性があります。
  • PoP 指標の Explore クエリの場合、PoP 指標のデータを計算するために、Looker はクエリの最も粒度の粗い期間の粒度で追加の期間のデータを取得します。たとえば、月次ディメンション、period: year で定義された PoP メジャー、過去 6 か月のフィルタを含むデータ探索クエリを作成すると、Looker はクエリの最も粗い粒度を特定します。この例では、PoP メジャーの year 期間が最も粗い粒度になります。この例では、Looker は過去 6 か月のデータに加えて、過去 6 か月を前年の同じ月と比較できるように、さらに 1 年分のデータを取得します。
  • PoP 指標を含む Explore クエリの要件で説明したように、PoP 指標を含む Explore クエリには、PoP 指標に関連付けられている period に適した時間ディメンションが必要です。Explore のフィールド ピッカーで時間ディメンションを選択しない場合、Looker は Explore のフィルタの時間ディメンションから必要な情報を取得できます。この場合、Looker はフィルタの時間のディメンションで Explore クエリの結果を並べ替えます。

前期比指標を使用した可視化

PoP 指標にはテーブルグラフのビジュアリゼーションがおすすめです。Explore クエリのフィールドによっては、他の可視化オプションも有効な場合があります。

表グラフ以外のビジュアリゼーションを使用する場合は、ビジュアリゼーションが明確であることを確認します。PoP 指標は前の期間との比較を提供するため、PoP 指標を含む可視化は誤解を招く可能性があります。たとえば、kind: previous として定義された前年比の PoP 指標では、今年の日の値として昨年の値が表示されます。Explore クエリに前年比の PoP 指標とともに今年の値が含まれている場合、ビジュアリゼーションには今年の値が 2 つ表示されます。

表グラフ以外のビジュアリゼーションを使用する場合は、PoP 指標が前の期間との比較であることをビジュアリゼーションで明確に示していることを確認してください。

PoP 指標の制限事項

PoP 指標には次の制限事項があります。

  • PoP メジャーは、新しい LookML ランタイムを使用する LookML プロジェクトでのみサポートされています。インスタンスで [以前の LookML ランタイムを使用する] レガシー機能が有効になっている場合、プロジェクトのマニフェスト ファイルnew_lookml_runtime:yes ステートメントを含める必要があります。
  • データポータルの Looker コネクタでは、PoP 指標はサポートされていません。
  • PoP 指標は、based_on セクションで説明されているように、集計指標に基づいていなければなりません。PoP 指標は、集計以外の指標に基づいて作成できません。
  • BI Engine 対称集計の Labs 機能が有効になっているインスタンスの BigQuery 接続では、PoP 指標がサポートされますが、PoP 指標を含む SQL クエリでは BI Engine 対称集計機能は使用されません。
  • PoP 指標はコホート分析をサポートしていません。
  • PoP 指標はローリング計算をサポートしていません。
  • PoP 指標では、常に現在の期間と前の期間が比較されます。現在の期間を前の期間以外の別の期間と比較するように PoP 指標を構成することはできません。たとえば、前年の 5 月と今年の 12 月を比較する PoP 指標を作成することはできません。
  • PoP 指標は、任意の期間(過去 2 週間と現在の 2 週間など)ではサポートされていません。
  • PoP 指標のパラメータでは、Liquid パラメータはサポートされていません。ただし、PoP の based_on フィールドまたは based_on_time フィールドが Liquid で定義されたディメンションを指している場合は、その Liquid が処理されます。
  • カスタム カレンダーを使用する PoP 指標の場合:

    • (Looker 26.8 より前)based_on_time パラメータは、type: custom_calendar のディメンション グループcustom_year タイムフレームを参照する必要があります。
    • (Looker 26.8 より前)custom_calendar_period: custom_year で定義された PoP 指標の場合、ユーザーのクエリに custom_week または custom_date が含まれていると、Looker は前週または前年の日付の値を返します。
  • PoP 測定は、次の Looker 機能ではサポートされていません。

  • PoP メジャーは カスタム フィールド を作成するために使用できません。

  • 週単位の比較には、カスタムカレンダーを使用する PoP 対策

  • 会計期間で定義された期間を持つ PoP メジャーは、会計期間以外の期間を持つ Explore クエリでは使用できません。また、会計期間以外の期間で定義された期間を持つ PoP メジャーは、会計期間ディメンションを含むクエリでは使用できません。

  • PoP メジャーは会計月のオフセットをサポートしており、PoP メジャーの based_on_time パラメーターは、Explore に関連付けられている LookML モデル ファイルから fiscal_month_offset 値を継承します。PoP メジャーを fiscal_year または fiscal_quarter で定義した場合、PoP メジャーは、Explore クエリで fiscal_year または fiscal_quarter の時間枠が指定されている場合にのみ、Explore クエリでサポートされます。その場合、fiscal_offset_month が有効になります。

  • PoP メジャーの period は、Explore クエリで選択された期間以上でなければなりません。例えば、period: monthで定義された PoP メジャーの場合、Explore クエリには、月以下の時間枠ディメンション(週や日など)が必要です。

  • PoP メジャーを使用する場合は、必ずdate_timeディメンションと並んで、対応する時間枠ディメンションを Explore に含めてください。例えば、PoP メジャーを定義して前四半期の対応する月の値を計算する場合、Explore では月ディメンションに加えて、対応する四半期ディメンション ([dimension_name]_quarter など) を含める必要があります。一致する期間ディメンションがない場合、生成された SQL は、前の期間を計算する前に日付に切り捨て関数 (TIMESTAMP_TRUNC(..., QUARTER) など) を適用するため、クエリは四半期の開始に基づいて評価されます。

    例えば、2 月の比較の場合、生成される SQL は対応する月(11 月)ではなく、前の四半期の最初の月(10 月)の値を取得します。探索機能に一致する期間ディメンションを含めることで、適切な SQL 生成とグループ化が保証されます。

PoP 対策でサポートされているデータベース方言

以下の表は、Looker の最新リリースで PoP メジャーをサポートする方言を示しています。

方言 サポート対象
Actian Avalanche
Amazon Athena
Amazon Aurora MySQL
Amazon Redshift
Amazon Redshift 2.1+
Amazon Redshift Serverless 2.1+
Apache Druid
Apache Druid 0.13.x - 0.17.x
Apache Druid 0.18+
Apache Hive 2.3+
Apache Hive 3.1.2+
Apache Spark 3+
ClickHouse
Cloudera Impala 3.1+
Cloudera Impala 3.1+ with Native Driver
Cloudera Impala with Native Driver
DataVirtuality
Databricks
Denodo 7
Denodo 8 & 9
Dremio
Dremio 11+
Exasol
Google BigQuery Legacy SQL
Google BigQuery Standard SQL
Google Cloud AlloyDB for PostgreSQL
Google Cloud PostgreSQL
Google Cloud SQL
Google Spanner
Greenplum
HyperSQL
IBM Netezza
MariaDB
Microsoft Azure PostgreSQL
Microsoft Azure SQL Database
Microsoft Azure Synapse Analytics
Microsoft SQL Server 2008+
Microsoft SQL Server 2012+
Microsoft SQL Server 2016
Microsoft SQL Server 2017+
MongoBI
MongoSQL
MySQL
MySQL 8.0.12+
Oracle
Oracle ADWC
PostgreSQL 9.5+
PostgreSQL pre-9.5
PrestoDB
PrestoSQL
SAP HANA
SAP HANA 2+
SingleStore
SingleStore 7+
Snowflake
Teradata
Trino
Vector
Vertica