ビューで測定を定義していますが、そのビューを別のビューに結合すると、 Explore に測定結果が表示されなくなります。測定結果はどこに行ったのですか?
考えられる原因と解決策
考えられる根本的な原因は、対称集計が有効になっているかどうかによって異なります。対称集計は、デベロッパーが symmetric_aggregates: no
LookML 設定で無効にしていないか、データベース言語が対称集計をサポートしていない場合を除き、自動的に有効になります。
対称集計が有効な場合
対称集計では、すべての種類の測定を結合で実行できます。ただし、この方法が可能なのは、 結合の両側にあるビューで主キーが定義されている場合のみです。測定を結合で実行できるようにするには、関連するすべてのビューで主キーを定義する必要があります。
各ビューで主キーを定義するには、次のように、
主キーフィールドの定義に
primary_key: yes
を追加します。
dimension: id { type: number primary_key: yes }
測定型 sum
と average
を結合で実行するには、
主キーが一意で NULL
以外の値でなければなりません。主キーが一意ではない場合、
次のようなエラーが表示されることがあります。
Non-Unique value/primary key (or sql_distinct_key), value overflow or collision when computing sum.
また、ビューに一意のフィールドが 1 つもない場合は、
SQL の 2 つ以上のフィールドを連結して複合主キーを作成し、
値の一意の組み合わせを作成できます。このエラーを解決する方法の詳細については、
Error: Non-Unique value/primary key (or sql_distinct_key), value overflow or collision when computing sum
ベスト プラクティス ページの
一意でない主キーのセクションをご覧ください。
対称集計が有効でない場合
一部の言語は対称集計をサポートしていません。または、Looker デベロッパーが symmetric_aggregates: no
LookML 設定で対称集計を無効にしています。対称集計が使用できない場合、Looker はデフォルトで count
型の測定(個別カウント測定になる)のみを結合で実行します。また、この方法では個別カウントで主キーが使用されるため、主キーも必要です。これにより、不正確な結果と
ファンアウトを回避できます。集計関数が機能しない問題についての
コミュニティ投稿を確認してください。
最新の Looker リリースで 対称集計をサポートしている言語を示す リストがあります。
考慮すべきその他の解決策
-
結合レベルでの
fields
(結合用)の 使用。fields
では、Explore に表示する結合ビューのフィールド(測定値、ディメンション)を 指定できます。 -
正しい
relationship
パラメータを 選択する。relationship
パラメータは、結合が SQL クエリで使用されるときに対称集計を適用するかどうかを Looker に伝えます。Looker が正確な測定値を計算できるように、 関係の種類を適切に定義すること が重要です。