gabungan dalam

Rasa inner gabungan seperti gabungan dalam standar dari dunia SQL. Baris output dihasilkan setiap kali baris di sisi kiri memiliki kunci gabungan yang sama dengan baris di sisi kanan.

Diagram yang memperlihatkan cara kerja gabungan.

Sintaks

LeftTable|joinkind=inner [ Petunjuk ] RightTableonKondisi

Pelajari selengkapnya tentang konvensi sintaksis.

Parameter

Nama Jenis Diperlukan Deskripsi
LeftTable string ✔️ Tabel kiri atau ekspresi tabular, terkadang disebut tabel luar, yang barisnya akan digabungkan. Dilambangkan sebagai $left.
Petunjuk string Nol atau lebih petunjuk gabungan yang dipisahkan spasi dalam bentukNilaiNama= yang mengontrol perilaku operasi pencocokan baris dan rencana eksekusi. Untuk informasi selengkapnya, lihat Petunjuk.
RightTable string ✔️ Tabel kanan atau ekspresi tabular, terkadang disebut tabel dalam, yang barisnya akan digabungkan. Dilambangkan sebagai $right.
Kondisi string ✔️ Menentukan bagaimana baris dari LeftTable dicocokkan dengan baris dari RightTable. Jika kolom yang ingin Anda cocokkan memiliki nama yang sama di kedua tabel, gunakan sintaks ONColumnName. Jika tidak, gunakan sintaks ON $left.LeftColumn==$right.RightColumn. Untuk menentukan beberapa kondisi, Anda dapat menggunakan kata kunci "dan" atau memisahkannya dengan koma. Jika Anda menggunakan koma, kondisi dievaluasi menggunakan operator logis "dan".

Tip

Untuk performa terbaik, jika satu tabel selalu lebih kecil dari tabel lainnya, gunakan sebagai sisi kiri gabungan.

Petunjuk

Nama parameter Nilai Deskripsi
hint.remote auto, left, local, right Lihat Gabungan Lintas Kluster
hint.strategy=broadcast Menentukan cara berbagi beban kueri pada node kluster. Lihat gabungan siaran
hint.shufflekey=<key> Kueri shufflekey membagikan muatan kueri pada node kluster, menggunakan kunci ke data partisi. Lihat kueri shuffle
hint.strategy=shuffle Kueri shuffle strategi berbagi beban kueri pada node kluster, di mana setiap simpul memproses satu partisi data. Lihat kueri acak

Mengembalikan

Skema: Semua kolom dari kedua tabel, termasuk kunci yang cocok.
Baris: Hanya baris yang cocok dari kedua tabel.

Contoh

let X = datatable(Key:string, Value1:long)
[
    'a',1,
    'b',2,
    'b',3,
    'k',5,
    'c',4
];
let Y = datatable(Key:string, Value2:long)
[
    'b',10,
    'c',20,
    'c',30,
    'd',40,
    'k',50
];
X | join kind=inner Y on Key

Output

Kunci Nilai1 Kunci1 Nilai2
b 3 b 10
b 2 b 10
c 4 c 20
c 4 c 30
k 5 k 50

Catatan

  • (b,10) dari sisi kanan, gabungan dua kali: dengan keduanya (b,2) dan (b,3) di sebelah kiri.
  • (c,4) di sisi kiri, gabungan dua kali: dengan keduanya (c,20) dan (c,30) di sebelah kanan.
  • (k,5) dari kiri dan (k, 50) dari kanan digabungkan sekali.