Wenn der Administrator Ihnen die Berechtigungen zum Erstellen von Tabellenberechnungen gewährt hat, können Sie die folgenden Funktionen verwenden, um gängige Funktionen schnell auszuführen, ohne Looker-Ausdrücke zu erstellen:
- Verknüpfungsberechnungen zur schnellen Ausführung gängiger Berechnungen für numerische Felder in der Datentabelle eines explorativen Analysetools
Wenn der Administrator Ihnen die Berechtigungen zum Erstellen benutzerdefinierter Felder gewährt hat, können Sie die folgenden Funktionen verwenden, um gängige Funktionen schnell auszuführen, ohne Looker-Ausdrücke erstellen zu müssen:
Mit benutzerdefinierten Gruppen können Sie Werte schnell mithilfe von benutzerdefinierten Labels gruppieren, ohne die
CASE WHEN
-Logik insql
-Parametern odertype: case
-Feldern entwickeln zu müssen.Benutzerdefinierte Bins zum Gruppieren numerischer Dimensionen in benutzerdefinierten Stufen, ohne
type: tier
-LookML-Felder entwickeln zu müssen
Looker-Ausdrücke
Looker-Ausdrücke (manchmal auch als Lexp bezeichnet) werden für Folgendes verwendet:
Ein Looker-Ausdruck besteht aus einer Kombination dieser Elemente:
NULL: Der Wert
NULL
gibt an, dass keine Daten vorhanden sind. Dies kann hilfreich sein, wenn Sie prüfen möchten, ob etwas leer oder nicht vorhanden ist.Eine Konstante:Eine Konstante ist ein unveränderlicher Wert, den Sie angeben. Eine Zahl wie
7
oder ein String wieCompleted
sind Konstanten.Ein Looker-Feld:Ein Verweis auf ein Looker-Feld, das Dimensionen, Messwerte und Tabellenberechnungen enthält.
Operator für Looker:Es gibt mehrere Arten von Operatoren, die auf der Dokumentationsseite zu Looker-Funktionen und -Operatoren aufgeführt sind:
- Mathematische Operatoren (z. B.
+
,-
,*
und/
) - Vergleichsoperatoren (z. B.
=
,>
und<=
) - Logische Operatoren (z. B.
AND
,OR
undNOT
)
- Mathematische Operatoren (z. B.
Eine Looker-Funktion: Diese sind mit Excel-Funktionen vergleichbar. Mit Funktionen können Sie Ihre Daten auf komplexe Weise transformieren oder referenzieren. Alle verfügbaren Funktionen werden auf der Dokumentationsseite zu Looker-Funktionen und -Operatoren aufgeführt.
Looker-Ausdrücke erstellen
Tabellenberechnungen, benutzerdefinierte Felder und benutzerdefinierte Filter verwenden den Looker-Ausdruckseditor. Während Sie den Ausdruck eingeben, werden in Looker Funktionen, Operatoren und Feldnamen vorgeschlagen, die Sie möglicherweise verwenden möchten.
Tipp: Wenn Sie ein Looker-Entwickler sind, der einen Datentest erstellt, um die Logik Ihres Modells zu überprüfen, können Sie mit dem Looker-Ausdruckseditor einen Looker-Ausdruck erstellen und ihn dann in den Parameter
expression
des Datentests kopieren.
Alle Vorschläge werden angezeigt
Rufen Sie den Looker-Ausdruckseditor in einer explorativen Datenanalyse auf, indem Sie eine Tabellenberechnung, ein benutzerdefiniertes Feld oder einen benutzerdefinierten Filter erstellen.
Geben Sie einen Gruppenbereich ein, um eine Liste aller Felder, Funktionen und Operatoren aufzurufen, aus denen Sie auswählen können. Wenn ein Feld derzeit im explorativen Analysetool ausgewählt ist, wird links neben dem Feld ein schwarzer Kreis angezeigt. Das Feld befindet sich oben in der Liste.
Geben Sie Text ein, um ihn auf die für Sie interessanten Elemente zu kürzen.
Im Editor für benutzerdefinierte Felder werden die aktuell verwendeten Felder angezeigt, sofern sie mit der Funktion des benutzerdefinierten Felds kompatibel sind.
Feld hinzufügen
Geben Sie die ersten Buchstaben des Feldnamens ein, um ein Looker-Feld in den Ausdruck aufzunehmen. Während der Eingabe wird die Suche im Editor auf eine Liste von Feldern und Funktionen beschränkt, die Ihre Eingabe enthalten. Sie können den Namen des Felds so eingeben, wie er auf der Seite „Entdecken“ angezeigt wird. Alternativ können Sie seinen Namen in LookML verwenden.
Wenn Sie ein Feld aus der Liste auswählen, fügt Looker es dem Ausdruck mit dem LookML-Namen im Format ${view_name.field_name}
hinzu. Dadurch wird sichergestellt, dass alle Felder in Ihrem Ausdruck eindeutige Namen haben.
Weitere Informationen zur Verwendung von Feldern finden Sie im Abschnitt Felder verwenden auf dieser Seite.
Summen werden hinzugefügt
Wenn Sie einen Ausdruck auf der Grundlage einer „Erkunden“-Ansicht erstellen, für die Sie Gesamtsummen angezeigt haben, können Sie dem Ausdruck auch Spalten- und Zeilensummen hinzufügen. Im Summenwert der Spalten wird im Editor vor der LookML-Iteration des Feldnamens das Wort Total (Gesamt) angezeigt. Für ein Feld namens Anzahl gibt Looker beispielsweise die Summe der Spalten für dieses Feld Count - Total
an.
Der LookML-Name für Summen hat das Format ${view_name.field_name:total}
, wobei :total
am Ende des Feldnamens hinzugefügt wird. Bei den Summenzeilen in der Zeile werden im Editor die Wörter Gesamtsummen vor dem Feldnamen angezeigt. Im LookML-Namen des Feldes wird :row_total
am Ende des Feldnamens hinzugefügt.
Operatoren hinzufügen
Sie können Ihrem Ausdruck bei Bedarf logische Operatoren wie AND
, OR
und NOT
hinzufügen. Normalerweise werden AND
-Operatoren vor OR
-Operatoren ausgewertet. Sie können dieses Verhalten jedoch mithilfe von Klammern überschreiben. Sie können auch Vergleichsoperatoren wie >
, =
und <=
sowie mathematische Operatoren wie +
und *
verwenden.
Wenn sich der Cursor auf einem Operator befindet, werden rechts neben dem Ausdruck im Informationsbereich Hinweise zur richtigen Verwendung angezeigt.
Eine ausführlichere Anleitung zur Verwendung von Operatoren finden Sie im Abschnitt Operatoren verwenden auf dieser Seite.
Funktionen hinzufügen
Geben Sie den Namen der Funktion ein, um eine Looker-Funktion in den Ausdruck aufzunehmen. Während der Eingabe wird die Suche im Editor auf eine Liste von Feldern und Funktionen beschränkt, die Ihre Eingabe enthalten.
Funktionen können aus Argumenten (oder Variablen) bestehen, die einen bestimmten Typ erfordern, z. B. ein Feld, eine Zahl oder „Ja“/„Nein“. Wenn sich der Cursor auf einer Funktion befindet, können Sie sich die Hinweise, die rechts im Ausdruck im Informationsbereich angezeigt werden, ansehen, um zu verstehen, welche Argumente Sie angeben müssen und welcher Typ es ist.
Die vollständige Liste der Funktionen, die Looker bietet, finden Sie auf der Dokumentationsseite zu Looker-Funktionen und -Operatoren.
Eine ausführliche Anleitung zur Verwendung von Funktionen finden Sie im Abschnitt Funktionen verwenden auf dieser Seite.
Fehlerhinweis und Informationsbereich verwenden
Während der Eingabe eines Ausdrucks wird in Looker rechts ein Informationsbereich angezeigt. Dieser Bereich enthält die Dokumentation und Vorschläge, insbesondere, wenn Ihr Ausdruck fehlerhaft ist.
Der Editor bietet Folgendes:
Fehlermarkierung:Looker enthält Bereiche, die noch nicht richtig sind, in Rot.
Vorschläge und Fehlerdetails:Im oberen Teil des Infobereichs finden Sie Vorschläge dazu, was Sie Ihrem Ausdruck als Nächstes hinzufügen können. Wenn ein Fehler auftritt, wird die Ursache erklärt. Wenn es mehrere Fehler gibt, hängt der angezeigte Fehler von der Position des Cursors ab.
Dokumentation:Im unteren Teil des Infobereichs sehen Sie je nach Cursorposition die Dokumentation zu der Funktion oder dem Operator, mit der Sie arbeiten. Wenn Sie beispielsweise das erste Argument einer
if()
-Funktion eingeben, liefert Looker die Informationen, die mit dem ersten Argument als wahr oder falsch ausgewertet werden sollten. Sie können auf den Funktionsnamen klicken, um die Dokumentation für diese Funktion aufzurufen.
Einschließlich Kommentaren
Sie können Kommentare in Looker-Ausdrücken einbeziehen, indem Sie die Kommentarzeile mit #
beginnen.
Felder verwenden
Manchmal möchten Sie in einem Ausdruck den Wert eines Felds (eine Dimension, eine Messung oder eine Tabellenberechnung) verwenden. Sie können den Wert des Felds einem anderen Namen hinzufügen, prüfen, ob er einen bestimmten Wert hat, ihn in eine Funktion einbinden oder viele andere Möglichkeiten haben.
Wie oben beschrieben, geben Sie den Namen des Felds in den Ausdruckseditor ein. Looker hilft Ihnen dabei, das richtige Feld für den Verweis zu finden. Wenn Sie einem Ausdruck ein Feld hinzufügen, verwendet Looker die LookML-Kennung des Felds, die in etwa so aussieht: ${view_name.field_name}
. Diese Kennung stimmt nicht immer mit dem Namen des Felds in der Feldauswahl überein. Es ist jedoch in Ordnung, wenn Sie nicht wissen, was sie ist. Geben Sie den Feldnamen so ein, wie er in der Feldauswahl angezeigt wird, und im Ausdruckseditor werden der Feldauswahlname und die LookML-ID angezeigt.
Es gibt mehrere Möglichkeiten, einen Wert abzurufen:
Wert aus derselben Zeile abrufen:Die einfachste Methode zur Verwendung eines Felds ist die direkte Referenz. Beispiel:
${product.category}
. Sagen Sie dabei „Für eine bestimmte Zeile wird die Produktkategorie aus dieser Zeile übernommen.“Wert aus einer anderen Zeile abrufen:Sie können den Wert eines Felds auch aus einer anderen Zeile abrufen. Ein Beispiel: Sie möchten die Logik „für jede bestimmte Zeile“ aus der vorherigen Zeile aus der Produktkategorie abrufen. Dazu können Sie eine Offset-Funktion verwenden (siehe diese Liste der Positionsfunktionen). Es könnte so aussehen:
offset(${product.category}, -1)
.Wert aus einer Pivot-Spalte abrufen:Sie können auch Werte aus Pivot-Spalten abrufen. Angenommen, Sie möchten die Logik „für jede bestimmte Zeile den Gesamtumsatz aus der ersten Pivot-Spalte“ abrufen. Wenn Sie mit Pivot-Spalten arbeiten möchten, müssen Sie Pivot-Funktionen verwenden. Weitere Informationen dazu finden Sie in dieser Liste mit Pivot-Funktionen. Es könnte so aussehen:
pivot_index(${order.total_sales}, 1)
.Gesamt aus einer Zeile oder Spalte abrufen:Wenn Sie Summen zu explorativen Datenanalysen hinzugefügt haben, können Sie die Gesamtwerte aus der Spalte oder Zeile abrufen. Dazu fügen Sie dem Feldnamen
:total
(Zeilensummen) oder:row_total
(Zeilensummen) im Format${field_name:total}
hinzu. Wenn Sie beispielsweise einen Prozentsatz der Gesamtanzahl der Aufträge abfragen möchten, könnten Sie folgende Tabellenberechnung erstellen:${orders.count} / ${orders.count:total}
.
Wenn Sie in einem benutzerdefinierten Filter auf Felder verweisen, können Sie nur Dimensionen verwenden, nicht Messwerte, Summen oder Tabellenberechnungen. Außerdem ist es nicht möglich, auf Werte in anderen Zeilen oder Pivot-Spalten zu verweisen. Das liegt daran, dass Looker Ihren Filter in SQL umwandeln kann, damit er Ihre Daten abruft.
In benutzerdefinierten Filtern oder benutzerdefinierten Feldern werden nicht alle Optionen für Uhrzeit und Datum unterstützt. Weitere Informationen finden Sie in der Beschreibung der Parametergruppe zu Dimensionen.
Wenn Sie Felder in einer Tabellenberechnung verwenden, können Sie einen beliebigen Wert aus einer beliebigen Dimension, Messung oder einer anderen Tabellenberechnung verwenden.
Operatoren verwenden
Looker-Ausdrücke können logische, Vergleichs- und mathematische Operatoren zum Erstellen verschiedener Bedingungen enthalten:
- Logische Operatoren (z. B.
AND
,OR
undNOT
) - Vergleichsoperatoren (z. B.
>
und<
) - Mathematische Operatoren (z. B.
+
und-
)
Wenn Sie mit Klammern keine andere Angabe machen, wird die AND
-Logik vor der OR
-Logik berücksichtigt. Der folgende Ausdruck ohne zusätzliche Klammern:
if (
${order_items.days_to_process}>=4 OR
${order_items.shipping_time}>5 AND
${order_facts.is_first_purchase},
"review", "okay")
wird ausgewertet als:
if (
${order_items.days_to_process}>=4 OR
(${order_items.shipping_time}>5 AND ${order_facts.is_first_purchase}),
"review", "okay")
In Looker sollten Sie yes
und no
anstelle von true
und false
verwenden. Diese logischen Konstanten sind nicht mit den Wörtern "yes"
und "no"
identisch, die in Anführungszeichen gesetzt sind. Weitere Informationen finden Sie in der Beschreibung der logischen Konstanten.
Funktionen verwenden
Looker-Ausdrücke enthalten häufig eine oder mehrere Funktionen, mit denen Sie bestimmte Daten abrufen oder bestimmte Dinge berechnen können. Sie ähneln Excel-Funktionen.
Funktionen haben die Form eines Namens, gefolgt von zwei Klammern: my_function()
. Möglicherweise müssen Sie durch Kommas getrennte Informationen in den Klammern angeben. Diese Informationen werden als „Argumente“ bezeichnet und sehen so aus: my_function(argument_1, argument_2)
.
Die now
-Funktion nimmt beispielsweise keine Argumente, sondern liefert das aktuelle Datum und die aktuelle Uhrzeit. Du verwendest diesen Code: now()
.
Die round
-Funktion verwendet ein Argument. Das ist eine Zahl. Du verwendest diesen Code: round(3.2)
. Das Ergebnis ist 3
.
Es gibt zwei Möglichkeiten, zu ermitteln, welche Argumente Sie gegebenenfalls angeben müssen:
- Der Infobereich rechts neben dem Ausdruckseditor enthält einige Informationen zur Funktion, die Sie schreiben. Sie können auf den Namen der Funktion klicken, um die zugehörige Dokumentation aufzurufen.
- Sie können auch direkt zur Dokumentationsseite zu Looker-Funktionen und -Operatoren gehen und nach der gewünschten Funktion suchen.
Sehen Sie sich die Funktion contains
an. Sie hat folgende Dokumentation:
Funktion | Syntax | Zweck |
---|---|---|
enthält | contains(string, search_string) |
Gibt Yes zurück, wenn string search_string und No enthält. |
Sie sehen, dass zwei Argumente erforderlich sind. Sie haben die Namen string
und search_string
, müssen aber in der Funktion nicht die genauen Wörter „string“ und „search_string“ eingeben. Dies sind nur die Namen der Argumente, die Sie durch etwas ersetzen. Wenn wir den Zweck lesen, sehen wir, dass string
ein Feld oder ein anderer Wert sein soll, nach dem gesucht werden soll, während search_string
das Attribut ist, nach dem gesucht werden soll. Hier ein Beispiel:
contains(${customer.feedback_text}, "great")
Wenn im Kundenfeedback das Wort „great“ angezeigt wird, liefert diese Funktion Yes
. Andernfalls wird No
zurückgegeben.
Sie können Funktionen in andere Funktionen einfügen, um komplexe Logiken zu verarbeiten. Solange das Ergebnis der inneren Funktion für die Argumente der äußeren Funktion geeignet ist, funktioniert es. Beispiel:
contains(
if(
is_null(${customer.feedback_text}),
${customer.comment_text},
${customer.feedback_text}
),
"great")
Hier haben wir die is_null
-Funktion in eine if
-Funktion, die sich selbst in einer contains
-Funktion befindet, verschachtelt. Das funktioniert so:
- Die Funktion
is_null()
sucht nach Feedback von Kunden. - Als Nächstes verwendet die Funktion
if()
dieses Ergebnis und gibt gegebenenfalls den Text des Kundenfeedbacks zurück. - Die Funktion
contains()
verwendet schließlich den von der Funktionif()
zurückgegebenen Text und sucht darin nach dem Wort „great“.
Logisch bedeutet dieser Ausdruck: „Wenn es Kundenfeedback gibt, suchen Sie danach. Ist dies nicht der Fall, suchen Sie stattdessen in den Kommentaren der Kunden. Achten Sie in beiden Fällen auf das Wort „great“.
Benutzerdefinierte Filter und benutzerdefinierte Felder können die meisten Funktionen verwenden, aber keine mathematischen Funktionen oder Funktionen, die auf andere Zeilen oder Pivot-Spalten verweisen. Auf der Dokumentationsseite zu Looker-Funktionen und -Operatoren sehen Sie, welche Funktionen Sie verwenden können.
Sie können jede Funktion in einer Tabellenberechnung verwenden. Sie können auch jede Funktion im
expression
-Parameter eines Datentests verwenden, weil derexpression
-Parameter im Grunde eine Tabellenberechnung ist, die zu einem „yesno“ (Boolescher Wert) führt.