Auf dieser Seite wird auf den Parameter
fieldsverwiesen, der Teil einer Exploration ist.
fieldskann auch als Teil eines Joins verwendet werden. Dies wird auf der Dokumentationsseite zum Parameterfields(für Joins) beschrieben.
fieldskann auch als Teil eines Sets verwendet werden, wie auf der Dokumentationsseite zum Parametersetbeschrieben.
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 Sets
Besondere Regeln
|
Definition
Mit fields können Sie angeben, welche Felder aus einem Explore in der Explore-Benutzeroberfläche angezeigt werden. Diese Felder können sich in der Basisansicht des Explores befinden oder über die Joins des Explores verfügbar sein. Wenn Sie fields nicht verwenden, werden in Looker standardmäßig alle Felder angezeigt.
Eine Liste von Feldern kann so verwendet werden: [view_name.field_a, view_name.field_b].
Sie können auch auf eine Gruppe von Feldern verweisen, die im Parameter set einer Ansicht definiert ist, z. B. [view_name.set_a*]. Das Sternchen weist Looker darauf hin, dass Sie auf einen Set-Namen und nicht auf einen Feldnamen verweisen.
In beiden Fällen muss das Feld oder der Satz vollständig eingegrenzt sein. Sie müssen also sowohl den Ansichtsnamen als auch den Feldnamen angeben.
In Looker wird automatisch ein Set namens ALL_FIELDS* erstellt, das alle Felder in der Basisansicht und den Joins des Explores enthält. Das ist besonders hilfreich, wenn Sie einige wenige unerwünschte Felder ausschließen möchten, z. B.:
explore: view_name {
fields: [ALL_FIELDS*, -joined_view_name.unwanted_field]
}
Looker erstellt auch automatisch Sets, die alle Felder in einer bestimmten Ansicht enthalten. Auf diese kann mit dem Format view_name* verwiesen werden. Das folgende Explore enthält beispielsweise nur Felder in der Ansicht customers:
explore: all_people {
fields: [customers*]
}
Beispiele
Nur das Feld name aus der Ansicht customer im Explore customer anzeigen:
explore: customer {
fields: [customer.name]
}
Zeigen Sie im customer-Explorer nur die Felder name, address und age aus der Ansicht customer an:
explore: customer {
fields: [customer.name, customer.address, customer.age]
}
Nur die Felder aus der Gruppe export_fields aus der Ansicht customer im Explore customer anzeigen:
explore: customer {
fields: [customer.export_fields*]
}
Schließen Sie das Feld status in der Ansicht customer aus dem Explore order aus:
explore: order {
fields: [ALL_FIELDS*, -customer.status]
join: customer {
sql_on: ${order.customer_id} = ${customer.id} ;;
}
}
Wichtige Punkte
Mit fields und explore können Sie einzelne Artikel oder Artikelgruppen ausschließen.
Sie können fields unter dem Parameter explore verwenden, um den ALL_FIELDS*-Satz 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} ;;
}
}
Wir konnten mit der Syntax view_name.field_name auf Felder aus der verknüpften Ansicht customer im Parameter fields auf Explore-Ebene verweisen.
Mit der Syntax - können Sie auch bestimmte 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]
}
}
Für den Parameter fields, der Teil eines join ist, kann nicht der ALL_FIELDS-Satz verwendet werden.
Auf dieser Seite wird auf den Parameter fields verwiesen, der ein untergeordnetes Element von explore ist. Wenn Sie den Parameter fields auf diese Weise verwenden, können Sie auf den Satz ALL_FIELDS* zugreifen und dann unerwünschte Felder ausschließen, wie bereits gezeigt.
Es gibt auch den Parameter fields, der ein untergeordnetes Element von join ist. Wenn Sie die Funktion so verwenden, können Sie den ALL_FIELDS*-Satz nicht verwenden.
Die ALL_FIELDS-Gruppe wird durch den Parameter fields begrenzt, der Teil eines join ist.
Auf dieser Seite wird fields beschrieben, wenn es in einem explore-Parameter verschachtelt ist. Es gibt auch einen ähnlichen Parameter fields, 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 wird die Gruppe von Feldern erstellt, aus denen das Explore 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 aus
orderssind verfügbar und inALL_FIELDS*enthalten. nameaususersist verfügbar und inALL_FIELDS*enthalten.- Andere Felder in
userswären nicht verfügbar oder imALL_FIELDS*-Set enthalten.
Wenn wir nun einen fields-Parameter unter explore hinzufügen, wird eine zusätzliche Einschränkung für diese Gruppe festgelegt. Angenommen, wir haben Folgendes getan:
explore: orders {
fields: [orders.price, users.address]
join: users {
fields: [name]
sql_on: ${orders.user_id} = ${users.id} ;;
}
}
In diesem Fall gilt:
priceausorderswird wie erwartet angezeigt, da es sich in der von uns erstellten MengeALL_FIELDS*befindet.addressvonuserswird nicht angezeigt, da es beim Beitritt vonusersnicht enthalten war (nurname).nameaususerswird ebenfalls nicht angezeigt, da wir sie nicht in der Zeilefields: [orders.price, users.address]in „Expl. Datenanalyse“ hinzugefügt haben.