kolom (untuk Eksplorasi)

Halaman ini merujuk pada parameter fields yang merupakan bagian dari Explore.

fields juga dapat digunakan sebagai bagian dari gabungan, yang dijelaskan di halaman dokumentasi parameter fields (untuk gabungan).

fields juga dapat digunakan sebagai bagian dari set, yang dijelaskan di halaman dokumentasi parameter set.

Penggunaan


explore: explore_name {
  fields: [
    field-or-set-specification,
    field-or-set-specification,
    ...
  ]
}
Hierarki
fields
Nilai Default
ALL_FIELDS*

Menerima
Tanda kurung siku yang berisi daftar kolom atau set yang dipisahkan koma

Aturan Khusus
  • Semua kolom dan set harus sepenuhnya dicakup (menggunakan sintaksis view_name.field_name)
  • Kolom dan set dapat dikecualikan dengan diawali tanda hubung (-)
  • Nama set selalu diakhiri dengan tanda bintang (*)
  • Anda dapat menggunakan nama set bawaan ALL_FIELDS*, yang mencakup semua kolom di Eksplorasi
  • Anda dapat menggunakan nama set bawaan view_name*, yang mencakup semua kolom dalam tampilan yang dirujuk.

Definisi

fields memungkinkan Anda menentukan kolom mana dari Eksplorasi yang ditampilkan di UI Eksplorasi. Kolom ini dapat berupa kolom di tampilan dasar Eksplorasi atau kolom yang tersedia dari gabungan Eksplorasi. Jika Anda tidak menggunakan fields, Looker secara default akan mengekspos semua kolom.

Daftar kolom dapat digunakan seperti ini: [view_name.field_a, view_name.field_b].

Anda juga dapat mereferensikan sekumpulan kolom (yang ditentukan dalam parameter set tampilan), seperti [view_name.set_a*]. Tanda bintang memberi tahu Looker bahwa Anda mereferensikan nama set, bukan nama kolom.

Dalam kedua kasus tersebut, perhatikan bahwa kolom atau set harus sepenuhnya tercakup. Dengan kata lain, Anda harus menyertakan nama tampilan dan nama kolom.

Looker otomatis membuat set bernama ALL_FIELDS*, yang berisi semua kolom dalam tampilan dasar dan gabungan Jelajah. Hal ini sangat berguna untuk mengecualikan beberapa kolom yang tidak diinginkan, seperti ini:

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

Looker juga otomatis membuat set yang berisi semua kolom dalam tampilan tertentu, yang dapat dirujuk dengan format view_name*. Misalnya, Explore berikut hanya menyertakan kolom dalam tampilan customers:

explore: all_people {
  fields: [customers*]
}

Contoh

Hanya tampilkan kolom bernama name dari tampilan customer di Eksplorasi customer:

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

Hanya menampilkan kolom yang disebut name, address, dan age dari tampilan customer di Eksplorasi customer:

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

Hanya tampilkan kumpulan kolom dalam set export_fields, dari tampilan customer, di Eksplorasi customer:

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

Mengecualikan kolom bernama status dalam tampilan customer dari Eksplorasi order:

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

Yang perlu diketahui

Anda dapat mengecualikan item satu per satu atau kumpulan item menggunakan fields dengan explore

Anda dapat menggunakan fields di parameter explore untuk memanfaatkan set ALL_FIELDS*, lalu mengecualikan kolom. Contoh:

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

Kita dapat mereferensikan kolom dari tampilan gabungan customer dalam parameter fields tingkat Eksplorasi dengan menggunakan sintaksis view_name.field_name.

Dengan menggunakan sintaksis -, Anda juga dapat mengecualikan kumpulan kolom yang ditentukan:

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]
  }
}

Parameter fields yang merupakan bagian dari join tidak dapat menggunakan set ALL_FIELDS

Halaman ini merujuk ke parameter fields yang merupakan turunan dari explore. Saat menggunakan parameter fields dengan cara ini, Anda dapat mengakses set ALL_FIELDS*, lalu mengecualikan kolom yang tidak diinginkan, seperti yang ditunjukkan sebelumnya.

Ada juga parameter fields yang merupakan turunan dari join. Jika digunakan dengan cara tersebut, Anda tidak dapat menggunakan set ALL_FIELDS*.

Set ALL_FIELDS dibatasi oleh parameter fields yang merupakan bagian dari join

Halaman ini menjelaskan fields saat disarangkan di bawah parameter explore. Ada juga parameter fields serupa yang berada di bawah join. Penting untuk memahami implikasi penerapan fields ke kedua level secara bersamaan.

Pertama, semua parameter fields di bagian join diterapkan. Tindakan ini akan membuat kumpulan kolom yang dapat dipilih oleh Eksplorasi. Perhatikan contoh berikut:

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

Dalam kasus ini:

  • Semua kolom dari orders akan tersedia, dan disertakan dalam ALL_FIELDS*.
  • name dari users akan tersedia, dan disertakan dalam ALL_FIELDS*.
  • Kolom lain di users tidak akan tersedia atau disertakan dalam set ALL_FIELDS*.

Sekarang, jika kita menambahkan parameter fields di bawah explore, kita menambahkan batasan di atas set tersebut. Misalkan kita melakukan hal berikut:

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

Dalam kasus ini:

  • price dari orders akan muncul seperti yang diharapkan, karena berada dalam set ALL_FIELDS* yang kami buat.
  • address dari users tidak akan muncul, karena tidak disertakan saat users bergabung (hanya name yang disertakan).
  • name dari users juga tidak akan muncul, karena kami tidak menambahkannya ke Jelajahi di baris fields: [orders.price, users.address].