Operasi Gabungan (Visual Basic)

Gabungan dari dua sumber data adalah asosiasi objek dalam satu sumber data dengan objek yang berbagi atribut umum di sumber data lain.

Gabungan adalah operasi penting dalam kueri yang menargetkan sumber data yang hubungannya tidak dapat diikuti secara langsung satu sama lain. Dalam pemrograman berorientasi objek, hal ini artinya korelasi antara objek yang tidak dimodelkan, seperti arah mundur pada hubungan satu arah. Contoh hubungan satu arah adalah kelas Pelanggan yang memiliki properti jenis Kota, tetapi kelas Kota tidak memiliki properti yang merupakan kumpulan objek Pelanggan. Jika Anda memiliki daftar objek Kota dan ingin menemukan semua pelanggan di setiap kota, Anda dapat menggunakan operasi gabungan untuk menemukannya.

Metode gabungan yang disediakan dalam kerangka kerja LINQ adalah Join dan GroupJoin. Metode ini melakukan equijoins, atau gabungan yang cocok dengan dua sumber data berdasarkan kesetaraan kunci. (Sebagai perbandingan, Transact-SQL mendukung operator gabungan selain 'sama dengan', misalnya operator 'kurang dari'.) Dalam istilah database relasional, Join mengimplementasikan gabungan dalam, yaitu jenis gabungan yang hanya memunculkan objek yang memiliki kecocokan dengan himpunan data lain. Metode GroupJoin tidak setara secara langsung dalam istilah database relasional, tetapi mengimplementasikan superset gabungan dalam dan gabungan kiri luar. Gabungan kiri luar adalah gabungan yang memunculkan setiap elemen dari sumber data pertama (kiri), bahkan jika tidak memiliki elemen yang berkorelasi di sumber data lainnya.

Ilustrasi berikut menunjukkan pandangan konseptual dari dua set dan elemen dalam set yang termasuk dalam gabungan dalam atau gabungan kiri luar.

Two overlapping circles showing inner/outer.

Metode

Nama Metode Deskripsi Sintaks Ekspresi Kueri Visual Basic Informasi Selengkapnya
Bergabung Menggabungkan dua urutan berdasarkan fungsi pemilih utama dan mengekstrak pasangan nilai. From x In …, y In … Where x.a = y.a

-atau-

Join … [As …]In … On …
Enumerable.Join

Queryable.Join
GroupJoin Menggabungkan dua urutan berdasarkan fungsi pemilih utama dan mengelompokkan kecocokan yang dihasilkan untuk setiap elemen. Group Join … In … On … Enumerable.GroupJoin

Queryable.GroupJoin

Lihat juga