LEFT JOIN

Pada pengolahan data di database, kita seringkali perlu menggabungkan data dari dua tabel berbeda berdasarkan nilai pada kolom acuan. Untuk melakukan hal tersebut, kita dapat menggunakan operasi join pada SQL. Salah satu jenis operasi join yang digunakan adalah left join.

Dalam artikel ini, kita akan membahas tentang left join, termasuk pengertian, cara kerja, serta contoh penggunaannya.


Pengertian Left Join

Left join adalah jenis operasi join yang digunakan untuk menggabungkan dua tabel berdasarkan nilai yang sama pada kolom acuan pada tabel pertama, dengan menyertakan seluruh baris pada tabel pertama dan baris yang sesuai pada tabel kedua. Jika tidak terdapat nilai yang sama pada kolom acuan, maka kolom-kolom yang berasal dari tabel kedua akan diisi dengan nilai NULL.


Cara Kerja Left Join

Pada left join, data pada tabel pertama (disebut juga left table) akan disertakan seluruhnya pada hasil join. Data pada tabel kedua (disebut juga right table) hanya akan disertakan jika terdapat nilai yang sama pada kolom acuan pada kedua tabel. Jika tidak terdapat nilai yang sama pada kolom acuan pada tabel kedua, maka kolom-kolom yang berasal dari tabel kedua akan diisi dengan nilai NULL.


Contoh Penggunaan

Untuk lebih memahami penggunaan left join, mari kita lihat sebuah contoh kasus. Misalkan kita memiliki dua tabel, yaitu tabel pelanggan dan tabel pesanan. Tabel pelanggan berisi data-data tentang pelanggan, seperti id_pelanggan, nama_pelanggan, dan alamat_pelanggan, telepon_pelanggan sedangkan tabel pesanan berisi data-data tentang pesanan yang dilakukan oleh pelanggan, seperti id_pesanan, id_pelanggan, tgl_pesanan, dan total_harga.

Tabel pelanggan:

Tabel pesanan:

Kita ingin menggabungkan kedua tabel tersebut berdasarkan kolom id_pelanggan, dengan menyertakan seluruh data pada tabel pelanggan dan hanya data-data pada tabel pesanan yang sesuai dengan kolom acuan pada tabel pelanggan. Selain itu, kita ingin menampilkan nama pelanggan dan total harga pesanan yang dilakukan oleh masing-masing pelanggan.

Berikut adalah sintaks SQL untuk melakukan left join pada contoh kasus di atas:

Keterangan:

  • pelanggan.nama_pelanggan : kolom nama_pelanggan dari tabel pelanggan
  • SUM(pesanan.total_harga) AS total_harga_pesanan : menjumlahkan total_harga dari tabel pesanan dan memberikan alias "total_harga_pesanan"
  • pelanggan : tabel pertama yang ingin di-join
  • pesanan : tabel kedua yang ingin di-join
  • pelanggan.id_pelanggan = pesanan.id_pelanggan : menggabungkan kedua tabel berdasarkan kolom id_pelanggan yang sama
  • GROUP BY pelanggan.nama_pelanggan : mengelompokkan data berdasarkan kolom nama_pelanggan dari tabel pelanggan

Hasil dari sintaks SQL yang telah kita jalankan, kita mendapatkan hasil gabungan data antara tabel pelanggan dan tabel pesanan berdasarkan kolom id_pelanggan. Karena kita menggunakan left join, maka seluruh data pada tabel pelanggan akan disertakan pada hasil join, sedangkan data pada tabel pesanan hanya akan disertakan jika terdapat nilai yang sama pada kolom acuan pada tabel pelanggan.

Kita juga melakukan operasi pengelompokan menggunakan GROUP BY pelanggan.nama_pelanggan, sehingga data yang dihasilkan akan dikelompokkan berdasarkan nama pelanggan. Selain itu, kita juga melakukan operasi SUM(pesanan.total_harga) untuk menjumlahkan total harga pesanan yang dilakukan oleh masing-masing pelanggan.

Berikut adalah contoh hasil output dari sintaks SQL tersebut:

Keterangan:

  • Pada hasil join, terdapat tiga baris yang dihasilkan, yaitu untuk pelanggan dengan nama "Novi Putri Agistiani", "Egi Subastian", "Salsa Amelia", dan "Dwi Gita".
  • Karena pelanggan "Novi Putri Agistiani" melakukan satu pesanan sebesar 150000, maka pada kolom total_harga_pesanan akan terdapat nilai 150000.
  • Karena pelanggan "Egi Subastian" melakukan dua pesanan, masing-masing sebesar 127000 dan 77000, maka pada kolom total_harga_pesanan akan terdapat nilai 204000.
  • Karena pelanggan "Salsa Amelia" melakukan satu pesanan sebesar 560000, maka pada kolom total_harga_pesanan akan terdapat nilai 560000.
  • Karena pelanggan "Dwi Gita" tidak melakukan pesanan, maka pada kolom total_harga_pesanan akan diisi dengan nilai NULL.


Kesimpulan

Left join adalah jenis operasi join yang digunakan untuk menggabungkan dua tabel berdasarkan nilai yang sama pada kolom acuan pada tabel pertama, dengan menyertakan seluruh baris pada tabel pertama dan baris yang sesuai pada tabel kedua. Jika tidak terdapat nilai yang sama pada kolom acuan, maka kolom-kolom yang berasal dari tabel kedua akan diisi dengan nilai NULL.

Penggunaan left join pada SQL dapat membantu kita untuk melakukan penggabungan data antara dua tabel yang berbeda dan memudahkan kita dalam melakukan analisis data. Namun, perlu diingat bahwa penggunaan left join harus dilakukan dengan hati-hati dan memperhatikan hubungan antara tabel-tabel yang ingin digabungkan, agar hasil join yang diperoleh sesuai dengan kebutuhan kita.

Subscribe to receive free email updates:

0 Response to "LEFT JOIN"

Posting Komentar