Felder (für Erkundungen)

Diese Seite bezieht sich auf den Parameter fields, der Teil einer Erkunden ist.

fields kann auch als Teil eines Joins verwendet werden (siehe Dokumentation zum Parameter fields (für Joins)).

fields kann auch als Teil eines Satzes verwendet werden, wie auf der Dokumentationsseite zum Parameter set beschrieben.

Nutzung

Explore: Explore-Name {
fields: [
field-or-set-specification,
field-or-set-specification,

...
]
}
Hierarchie
fields
Standardwert
ALL_FIELDS*

Akzeptiert
Eckige Klammern mit einer durch Kommas getrennten Liste von Feldern oder Gruppen

Sonderregeln
  • Alle Felder und Gruppen müssen vollständig definiert sein (mit der view_name.field_name-Syntax)
  • Felder und Sätze können mit einem Bindestrich (-) ausgeschlossen werden
  • Satznamen enden immer mit einem Sternchen (*)
  • Sie können den integrierten Namen ALL_FIELDS* verwenden. Dieser enthält alle Felder im Bereich „Erkunden“.
  • Sie können den integrierten Satznamen view_name* verwenden, der alle Felder in der referenzierten Ansicht enthält.

Definition

Mit fields können Sie angeben, welche Felder einer Erkunden-Funktion in der Benutzeroberfläche angezeigt werden. Diese Felder können sich in der Basisansicht des Bereichs „Erkunden“ oder in den Joins von „Erkunden“ befinden. Wenn Sie fields nicht verwenden, werden in Looker standardmäßig alle Felder freigegeben.

Eine Liste von Feldern könnte beispielsweise so aussehen: [view_name.field_a, view_name.field_b].

Sie können auch auf eine Reihe von Feldern verweisen, die im Parameter set einer Ansicht definiert sind, z. B. [view_name.set_a*]. Das Sternchen teilt Looker mit, dass Sie auf einen Satznamen und nicht auf einen Feldnamen verweisen.

In beiden Fällen muss das Feld bzw. die Gruppe vollständig definiert sein. Sie müssen also sowohl den Ansichtsnamen als auch den Feldnamen angeben.

Looker erstellt automatisch einen Satz mit dem Namen ALL_FIELDS*, der alle Felder in der Basisansicht des Joins und Joins enthält. Dies ist besonders hilfreich, um eine Reihe unerwünschter Felder auszuschließen:

explore: view_name {
  fields: [ALL_FIELDS*, -joined_view_name.unwanted_field]
}

Looker erstellt außerdem automatisch Gruppen, die alle Felder in einer bestimmten Ansicht enthalten, auf die im Format view_name* verwiesen werden kann. Der folgende Tab enthält beispielsweise nur Felder in der Ansicht customers:

explore: all_people {
  fields: [customers*]
}

Beispiele

Nur das Feld nameaus der Ansicht customer in der customerAnsicht anzeigen:

explore: customer {
  fields: [customer.name]
}

Nur die Felder name, address und age aus der Ansicht customer customer Erkunden anzeigen:

explore: customer {
  fields: [customer.name, customer.address, customer.age]
}

Nur die Felder in der export_fieldsGruppe der customer Ansicht customer Erkunden anzeigen:

explore: customer {
  fields: [customer.export_fields*]
}

Schließen Sie das Feld status in der Ansicht customer aus dem Feld order Erkunden aus:

explore: order {
  fields: [ALL_FIELDS*, -customer.status]
  join: customer {
    sql_on: ${order.customer_id} = ${customer.id} ;;
  }
}

Wichtige Informationen

Mit fields und explore können Sie einzelne Elemente oder Gruppen von Elementen ausschließen

Sie können fields unter dem Parameter explore verwenden, um die ALL_FIELDS*-Gruppe zu nutzen und dann Felder auszuschließen. Beispiel:

explore: order {
  fields: [
    ALL_FIELDS*,
    -customer.unwanted_field_a,
    -customer.unwanted_field_b
  ]
  join: customer {
    sql_on: ${order.customer_id} = ${customer.id} ;;
  }
}

Über die Syntax view_name.field_name konnten wir Felder aus der verknüpften Ansicht customer im Parameter fields der Ebene „Erkunden“ referenzieren.

Mit der Syntax - können Sie auch definierte Gruppen von Feldern ausschließen:

explore: orders {
  fields: [ALL_FIELDS*, -users.statezip*]
  join: users {
    sql_on: ${orders.user_id} = ${users.id} ;;
    relationship: many_to_one
  }
}

view: users {
  set: statezip {
    fields:[state, zip]
  }
}

Der Parameter fields, der Teil eines join ist, kann den festgelegten Wert ALL_FIELDS nicht verwenden

Diese Seite bezieht sich auf den Parameter fields, der explore untergeordnet ist. Wenn Sie auf diese Weise verwendet werden, können Sie auf die Gruppe ALL_FIELDS* zugreifen und dann unerwünschte Felder wie oben beschrieben ausschließen.

Es gibt auch einen fields-Parameter, der join untergeordnet ist. Wenn Sie es auf diese Weise verwenden, können Sie den Satz ALL_FIELDS* nicht verwenden.

Der Satz ALL_FIELDS wird durch den Parameter fields begrenzt, der Teil eines join ist

Auf dieser Seite wird fields beschrieben, wenn sie in einem explore-Parameter verschachtelt ist. Es gibt auch einen ähnlichen fields-Parameter, der unter join verschachtelt ist. Es ist wichtig, die Auswirkungen der gleichzeitigen Anwendung von fields auf beide Ebenen zu verstehen.

Zuerst werden alle fields-Parameter unter join angewendet. Dadurch werden die Felder erstellt, aus denen die Option „Erkunden“ auswählen kann. Betrachten Sie dieses Beispiel:

explore: orders {
  join: users {
    fields: [name]
    sql_on: ${orders.user_id} = ${users.id} ;;
  }
}

In diesem Fall gilt:

  • Alle Felder von orders sind verfügbar und in ALL_FIELDS* enthalten.
  • name von users sind verfügbar und in ALL_FIELDS* enthalten.
  • Andere Felder in users sind nicht verfügbar oder in den ALL_FIELDS* enthalten.

Wenn wir jetzt einen fields-Parameter unter explore hinzufügen, wird dieser Gruppe eine Einschränkung hinzugefügt. Beispiel:

explore: orders {
  fields: [orders.price, users.address]
  join: users {
    fields: [name]
    sql_on: ${orders.user_id} = ${users.id} ;;
  }
}

In diesem Fall gilt:

  • price“ von orders wird wie erwartet angezeigt, da er im festgelegten ALL_FIELDS*-Satz enthalten ist.
  • address von users werden nicht angezeigt, da sie nicht eingeschlossen wurde, als users beigetreten war (nur name).
  • name von users werden auch nicht angezeigt, da es nicht in die Zeile „fields: [orders.price, users.address]“ der Zeile „Erkunden“ aufgenommen wurde.