Cara menggunakan mysql left join

Tutorial MySQL ini menjelaskan Cara Menggunakan MySQL JOINS(inner dan outer) dengan sintaks, dan contoh.

Deskripsi

MySQL JOINS digunakan untuk mengambil data dari beberapa tabel. Sebuah MySQL JOINS dilakukan setiap kali ada dua atau lebih tabel digabungkan dalam sebuah pernyataan SQL.

Ada berbagai jenis MySQL JOINS:

  • MySQL INNER JOIN
  • MySQL LEFT OUTER JOIN (LEFT JOIN)
  • MySQL RIGHT OUTER JOIN (RIGHT JOIN)

Jadi mari kita bahas sintaks MySQL JOINS, lihat ilustrasi visual MySQL JOINS, dan jelajahi contoh MySQL JOINS.

INNER JOIN (simple join)

Kemungkinannya adalah, Anda sudah pernah menulis sebuah pernyataan yang menggunakan MySQL INNER JOIN. Ini adalah tipe join yang paling umum. MySQL INNER JOINS mengembalikan semua baris dari beberapa tabel dimana kondisi join terpenuhi.
Sintaksis

Sintaks untuk INNER JOIN di MySQL adalah:

SELECT columns

FROM table1

INNER JOIN table2

ON table1.column=table2.column;<span id="result_box"class="" lang="id"></span>

Contoh

Berikut adalah contoh dari MySQL INNER JOIN:

SELECT suppliers.supplier_id,suppliers.supplier_name,orders.order_date

FROM suppliers

INNER JOIN orders

ON suppliers.supplier_id= orders.supplier_id;

Contoh MySQL INNER JOIN ini akan mengembalikan semua baris dari tabel pemasok dan pesanan dimana ada nilai pemasok_id yang sesuai di tabel pemasok dan pesanan.

Mari lihat beberapa data untuk menjelaskan bagaimana INNER JOINS bekerja:

Kami memiliki tabel yang disebut pemasok dengan dua bidang (supplier_id dan supplier_name). Ini berisi data berikut:

supplier_idsupplier_name
10000 IBM
10001 Hewlett Packard
10002 Microsoft
10003 NVIDIA

Kami memiliki tabel lain yang disebut pesanan dengan tiga bidang (order_id, supplier_id, dan order_date). Ini berisi data berikut:

order_idsupplier_idorder_date
500125 10000 2013/05/12
500126 10001 2013/05/13
500127 10004 2013/05/14

Jika kita menjalankan perintah SELECT MySQL (yang berisi INNER JOIN) di bawah ini:

SELECT suppliers.supplier_id,suppliers.supplier_name,orders.order_date

FROM suppliers

INNER JOIN orders

ON suppliers.supplier_id= orders.supplier_id;

Hasil kami akan terlihat seperti ini:

supplier_idnameorder_date
10000 IBM 2013/05/12
10001 Hewlett Packard 2013/05/13

Baris untuk Microsoft dan NVIDIA dari tabel pemasok akan dihilangkan, karena 10002 dan 10001 pemasok_id tidak ada di kedua tabel. Baris untuk 500127 (order_id) dari tabel pesanan akan dihilangkan, karena supplier_id 10004 tidak ada di tabel pemasok.

LEFT OUTER JOIN

Tipe join lainnya disebut dengan MySQL LEFT OUTER JOIN. Jenis join ini mengembalikan semua baris dari tabel tangan KIRI yang ditentukan dalam kondisi ON dan hanya baris tersebut dari tabel lain dimana field join sama (join condition terpenuhi).

Sintaksis

Sintaks untuk LEFT OUTER JOIN di MySQL adalah:

SELECT columns

FROM table1

LEFT[OUTER]JOIN table2

ON table1.column=table2.column;

Di beberapa database, LEFT OUTER JOIN kata kunci diganti dengan LEFT JOIN.

Contoh

Berikut adalah contoh dari MySQL LEFT OUTER JOIN:

SELECT suppliers.supplier_id,suppliers.supplier_name,orders.order_date

FROM suppliers

LEFT JOIN orders

ON suppliers.supplier_id= orders.supplier_id;

Contoh LEFT OUTER JOIN ini akan mengembalikan semua baris dari tabel pemasok dan hanya baris dari tabel pesanan dimana field join sama.

Jika nilai supplier_id di tabel pemasok tidak ada dalam tabel pesanan, semua field dalam tabel pesanan akan ditampilkan sebagai <null> pada set hasil.

Mari lihat beberapa data untuk menjelaskan bagaimana LEFT OUTER JOINS bekerja:

Kami memiliki tabel yang disebut pemasok dengan dua bidang (supplier_id dan supplier_name). Ini berisi data berikut:

supplier_idsupplier_name
10000 IBM
10001 Hewlett Packard
10002 Microsoft
10003 NVIDIA

Kami memiliki tabel kedua yang disebut pesanan dengan tiga bidang (order_id, supplier_id, dan order_date). Ini berisi data berikut:

order_idsupplier_idorder_date
500125 10000 2013/05/12
500126 10001 2013/05/13

Jika kita menjalankan pernyataan SELECT (yang berisi LEFT OUTER JOIN) di bawah ini:

SELECT suppliers.supplier_id,suppliers.supplier_name,orders.order_date

FROM suppliers

LEFT JOIN orders

ON suppliers.supplier_id= orders.supplier_id;

Hasil kami akan terlihat seperti ini:

supplier_idsupplier_nameorder_date
10000 IBM 2013/05/12
10001 Hewlett Packard 2013/05/13
10002 Microsoft <null>
10003 NVIDIA <null>

Baris untuk Microsoft dan NVIDIA akan disertakan karena LEFT OUTER JOIN digunakan. Namun, Anda akan melihat bahwa bidang order_date untuk catatan tersebut berisi nilai <null>.

RIGHT OUTER JOIN

Tipe join yang lain disebut MySQL RIGHT OUTER JOIN. Jenis join ini mengembalikan semua baris dari tabel RIGHT-hand yang ditentukan dalam kondisi ON dan hanya baris-baris dari tabel lain dimana field join sama (join condition terpenuhi).

Sintaksis

Sintaks untuk RIGHT OUTER JOIN di MySQL adalah:

SELECT columns

FROM table1

RIGHT[OUTER]JOIN table2

ON table1.column=table2.column;

Di beberapa database, kata kunci RIGHT OUTER JOIN diganti dengan RIGHT JOIN.

Contoh

Berikut adalah contoh dari MySQL RIGHT OUTER JOIN:

SELECT orders.order_id,orders.order_date,suppliers.supplier_name

FROM suppliers

RIGHT JOIN orders

ON suppliers.supplier_id= orders.supplier_id;

Contoh RIGHT OUTER JOIN ini akan mengembalikan semua baris dari tabel pesanan dan hanya baris dari tabel pemasok dimana bidang join sama.

Jika nilai supplier_id di tabel pesanan tidak ada di tabel pemasok, semua field di tabel pemasok akan ditampilkan sebagai <null> pada set hasil.

Mari lihat beberapa data untuk menjelaskan bagaimana RIGHT OUTER JOINS bekerja:

Kami memiliki tabel yang disebut pemasok dengan dua bidang (supplier_id dan supplier_name). Ini berisi data berikut:

supplier_idsupplier_name
10000 Apple
10001 Google

Kami memiliki tabel kedua yang disebut pesanan dengan tiga bidang (order_id, supplier_id, dan order_date). Ini berisi data berikut:

order_idsupplier_idorder_date
500125 10000 2013/08/12
500126 10001 2013/08/13
500127 10002 2013/08/14

Jika kita menjalankan pernyataan SELECT (yang berisi RIGHT OUTER JOIN) di bawah ini:

SELECT orders.order_id,orders.order_date,suppliers.supplier_name

FROM suppliers

RIGHT JOIN orders

ON suppliers.supplier_id= orders.supplier_id;

Hasil kami akan terlihat seperti ini:

order_idorder_datesupplier_name
500125 2013/08/12 Apple
500126 2013/08/13 Google
500127 2013/08/14 <null>

Baris untuk 500127 (order_id) akan disertakan karena RIGHT OUTER JOIN digunakan. Namun, Anda akan melihat bahwa field supplier_name untuk record tersebut berisi nilai <null>.

Apa itu left join mysql?

LEFT JOIN merupakan perintah join untuk menampilkan semua data sebelah kiri dari table yang di joinkan dan menampilkan data sebelah kanan yang cocok dengan kondisi join. Jika tidak ditemukan kecocokan, maka akan di set NULL secara otomatis. Kebalikan dari LEFT JOIN adalah RIGHT JOIN.

LEFT join untuk apa?

3. LEFT JOIN Pada LEFT JOIN, semua data pada tabel sebelah kiri akan ditampilkan, sedangkan data pada tabel disebelah kanan hanya akan ditampilkan jika data terkait pada tabel tersebut muncul di tabel sebelah kiri.

Apa perbedaan right join dan left join?

LEFT JOIN: mengembalikan semua baris dari tabel kiri, bahkan jika tidak ada kecocokan di tabel kanan. RIGHT JOIN: mengembalikan semua baris dari tabel kanan, bahkan jika tidak ada kecocokan di tabel kiri.

Apa itu inner join?

Jenis yang pertama dari fungsi join adalah inner join. Inner join ini berfungsi untuk mengambil semua baris dari kedua tabel atau lebih. Penggabungan antara dua tabel atau lebih ini hanya dapat dilakukan jika tabel-tabel tersebut memiliki key kolom yang sama.