dari (untuk gabungan)

Halaman ini merujuk pada parameter from yang merupakan bagian dari gabungan.

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

Penggunaan


explore: view_name {
  join: join_name {
    from: view_name_2
  }
}
Hierarki
from
Nilai Default
Tampilan yang namanya cocok dengan nama gabungan

Menerima
Nama tampilan yang ada

Definisi

from menentukan view yang akan digunakan dalam gabungan. Jika from tidak disertakan, Looker akan mengasumsikan bahwa nama tampilan pokok sama dengan nama gabungan.

Biasanya from hanya digunakan jika Anda ingin gabungan dan kolomnya memiliki nama yang berbeda dari tampilan dasarnya. Agar lebih jelas, pertimbangkan contoh saat dimensi bernama order_value telah dibuat dalam tampilan bernama underlying_view:

  • Kolom ini biasanya akan muncul sebagai NILAI PESANAN TAMPILAN DASAR di UI Jelajah dan akan dirujuk di LookML dengan ${underlying_view.order_value}.
  • Jika LookML di bagian Penggunaan diterapkan ke contoh ini, kolom akan muncul sebagai NAMA ALIAS BARU Nilai Pesanan dan dirujuk sebagai ${new_alias_name.order_value}.

Teknik ini sangat berguna saat tampilan yang sama perlu digabungkan ke Eksplorasi dengan beberapa cara yang berbeda.

Contoh

Gabungkan tampilan person ke Explore order, tetapi panggil customer:

explore: order {
  join: customer {
    from: person
    sql_on: ${order.customer_id} = ${customer.id} ;;
  }
}

Gabungkan tampilan person ke Eksplorasi order dua kali -- sekali sebagai customer dan sekali sebagai representative:

explore: order {
  join: customer {
    from: person
    sql_on: ${order.customer_id} = ${customer.id} ;;
  }
  join: representative {
    from: person
    sql_on: ${order.representative_id} = ${representative.id} ;;
  }
}

Hal-hal yang perlu dipertimbangkan

from mengubah cara kolom dirujuk dalam Eksplorasi

Seperti yang disebutkan sebelumnya, penggunaan from memiliki dampak penting pada cara kolom dirujuk. Hal ini dapat menimbulkan beberapa tantangan saat view digunakan di banyak tempat yang berbeda. Perhatikan contoh berikut:

explore: order {
  join: customer {
    from: person
    sql_on: ${order.customer_id} = ${customer.id} ;;
  }
}

Di sini, person digabungkan ke order, tetapi dipanggil customer. Jadi, jika Anda perlu mereferensikan kolom dari customer dalam order, Anda akan menggunakan ${customer.field_name}. Jika, dalam Eksplorasi kedua, Anda menggabungkan person ke order lagi — tetapi tidak mengganti namanya menjadi customer — referensi ${customer.field_name} tidak akan berfungsi dalam Eksplorasi kedua tersebut. Pendekatan umum untuk masalah ini adalah mengecualikan kolom yang bermasalah dari Eksplorasi kedua menggunakan fields. Tampilannya akan terlihat seperti ini:

explore: the_second_explore {
  fields: [ALL_FIELDS*, -person.problem_field]
  join: person {
    sql_on: ${the_second_explore.some_field} = ${person.some_field} ;;
  }
}

from paling sering digunakan untuk menggabungkan tabel yang sama lebih dari sekali ke Eksplorasi

Jika satu tabel berisi berbagai jenis entitas, Anda dapat menggabungkan tampilan ke Eksplorasi lebih dari sekali. Misalnya, Anda memiliki order Jelajah dan perlu bergabung ke tampilan person dua kali — sekali untuk pelanggan dan sekali untuk perwakilan layanan pelanggan. Anda dapat melakukan hal seperti ini:

explore: order {
  join: customer {
    from: person
    sql_on: ${order.customer_id} = ${customer.id} ;;
  }
  join: representative {
    from: person
    sql_on: ${order.representative_id} = ${representative.id} ;;
  }
}

SQL yang akan dihasilkan Looker dari LookML ini adalah:

SELECT    ...
FROM      order
LEFT JOIN person AS customer
ON        customer.id = order.customer_id
LEFT JOIN person AS representative
ON        representative.id = order.representative_id