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 Parameterfields
(für Joins)).
fields
kann auch als Teil eines Satzes verwendet werden, wie auf der Dokumentationsseite zum Parameterset
beschrieben.
Nutzung
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 GruppenSonderregeln
|
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 name
aus der Ansicht customer
in der customer
Ansicht 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_fields
Gruppe 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 inALL_FIELDS*
enthalten. name
vonusers
sind verfügbar und inALL_FIELDS*
enthalten.- Andere Felder in
users
sind nicht verfügbar oder in denALL_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
“ vonorders
wird wie erwartet angezeigt, da er im festgelegtenALL_FIELDS*
-Satz enthalten ist. address
vonusers
werden nicht angezeigt, da sie nicht eingeschlossen wurde, alsusers
beigetreten war (nurname
).name
vonusers
werden auch nicht angezeigt, da es nicht in die Zeile „fields: [orders.price, users.address]
“ der Zeile „Erkunden“ aufgenommen wurde.