Warum werden meine Messwerte nicht über eine Zusammenführung erfasst?

Sie haben einige Messwerte in einer Ansicht definiert. Wenn Sie diese Ansicht jedoch mit einer anderen Ansicht verknüpfen, werden die Messwerte nicht mehr in einem Explore angezeigt. Wo sind die Maßnahmen?

Mögliche Ursachen und Lösungen

Die möglichen zugrunde liegenden Ursachen hängen davon ab, ob Sie symmetrische Summen aktiviert haben. Symmetrische Summen sind automatisch aktiviert, sofern Ihr Entwickler sie nicht mit der LookML-Einstellung symmetric_aggregates: no deaktiviert hat oder Ihr Datenbankdialekt keine symmetrischen Summen unterstützt.

Wenn symmetrische Summen aktiviert sind

Mit symmetrischen Aggregaten können Messwerte aller Typen durch Joins übertragen werden. Dies ist jedoch nur möglich, wenn in den Ansichten auf beiden Seiten eines Joins Primärschlüssel definiert sind. Damit Messwerte über Joins erfolgen, müssen Sie in allen beteiligten Ansichten einen Primärschlüssel definieren.

Sie können in jeder Ansicht einen Primärschlüssel definieren, indem Sie der Definition des Primärschlüsselfelds primary_key: yes hinzufügen:

dimension: id {
 type: number
 primary_key: yes
}

Primärschlüssel müssen für die Messwerttypen sum und average absolut eindeutige Nicht-NULL-Werte haben, damit Joins ausgeführt werden können. Wenn Ihr Primärschlüssel nicht eindeutig ist, erhalten Sie möglicherweise eine Fehlermeldung wie die folgende:

Non-Unique value/primary key (or sql_distinct_key), value overflow or collision when computing sum.

Wenn es in Ihrer Ansicht kein einzelnes eindeutiges Feld gibt, können Sie einen zusammengesetzten Primärschlüssel erstellen, indem Sie zwei oder mehr Felder in SQL verketten, um eine eindeutige Kombination von Werten zu erhalten. Weitere Informationen zum Beheben dieses Fehlers finden Sie auf der Seite Error: Non-Unique value/primary key (or sql_distinct_key), value overflow or collision when computing sum Best Practices im Abschnitt Nicht eindeutiger Primärschlüssel.

Wenn symmetrische Summen nicht aktiviert sind

Einige Dialekte unterstützen keine symmetrischen Summen oder Ihr Looker-Entwickler hat symmetrische Summen mit der LookML-Einstellung symmetric_aggregates: no deaktiviert. Wenn keine symmetrischen Summen verwendet werden können, werden in Looker standardmäßig nur Messwerte vom Typ count (die zu Messwerten vom Typ „Anzahl der eindeutigen Werte“ werden) durch einen Join übertragen. Für diesen Ansatz ist auch ein Primärschlüssel erforderlich, da der Primärschlüssel für die Funktion „count distinct“ verwendet wird. So werden ungenaue Ergebnisse und Fanouts vermieden. Communitybeitrag zu fehlerhaften Aggregatfunktionen

In der Liste der Dialekte, die symmetrische Summen unterstützen, finden Sie Informationen dazu, welche Dialekte symmetrische Summen in der aktuellen Looker-Version unterstützen.

Weitere mögliche Lösungen

  • Die Verwendung von fields (für Joins) auf Joinebene. Mit fields können Sie angeben, welche Felder (Kennzahlen, Dimensionen) aus einer verknüpften Ansicht in einem Explore angezeigt werden.
  • Den richtigen relationship-Parameter auswählen. Mit dem Parameter relationship wird Looker mitgeteilt, ob symmetrische Aggregate angewendet werden sollen, wenn der Join in einer SQL-Abfrage verwendet wird. Es ist wichtig, den Typ der Beziehung richtig zu definieren, damit Looker genaue Messwerte berechnen kann.