Kapan Menggunakan MySQL Self Join dan Contohnya

When Use Mysql Self Join



MySQL Self-Join adalah jenis SQL Join yang memungkinkan Anda untuk menggabungkan tabel dengan dirinya sendiri. Ia bekerja dengan menggunakan jenis gabungan lain seperti klausa gabungan dalam atau kiri untuk menggabungkan baris berdasarkan kondisi yang ditentukan.

Tutorial ini akan menunjukkan kepada Anda bagaimana menggunakan MySQL self-join untuk menggabungkan tabel dengan dirinya sendiri dan membuat data yang disesuaikan.







Penggunaan Dasar

MySQL self-join menggunakan alias tabel untuk memastikan Anda tidak mengulangi tabel yang sama lebih dari satu kali dalam satu pernyataan.



CATATAN: Jika Anda tidak terbiasa dengan alias tabel, pertimbangkan tutorial kami yang lain yang menjelaskan konsep secara lengkap.



Sintaks umum untuk menggunakan self-join mirip dengan satu ketika menggabungkan dua tabel. Namun, kami menggunakan alias tabel. Pertimbangkan kueri yang ditunjukkan di bawah ini:





PILIH alias1.cols,alias2.cols DARI tbl1 alias1,tbl2 alias2 DI MANA [kondisi]

Contoh Kasus Penggunaan

Mari kita gunakan contoh untuk memahami cara melakukan self join MySQL. Misalkan Anda memiliki database dengan informasi berikut (Lihat kueri lengkap di bawah)

MENJATUHKAN SKEMA JIKA ADA diri sendiri;
MEMBUAT SKEMA diri sendiri;
MENGGUNAKAN diri sendiri;
MEMBUAT MEJA pengguna(
Indo INT KUNCI UTAMA AUTO_INCREMENT ,
nama depan VARCHAR (255),
surel VARCHAR (255),
pembayaran_id INT ,
berlangganan INT
);
MEMASUKKAN KE DALAM pengguna(nama depan,surel,pembayaran_id,berlangganan) NILAI ('Valerie G. Phillip', ' [dilindungi email] ', 10001, 1), ('Sean R. Cerita', ' [dilindungi email] ', 10005, 2), ('Bobby S. Orang Baru', ' [dilindungi email] ', 100010, 5);

Kami akan mulai dengan INNER bergabung dan akhirnya bergabung dengan kiri.



Gabung Sendiri menggunakan Gabung Dalam

Kueri di bawah ini melakukan gabungan INNER pada tabel yang dibuat di atas.

PILIH al1.* DARI pengguna al1 BATIN IKUTI pengguna al2 PADA al1.berlangganan=al2.berlangganan DIPESAN OLEH Indo DESC ;

Outputnya ditunjukkan di bawah ini:

Gabung Sendiri menggunakan Gabung Kiri

Contoh query di bawah ini menjelaskan bagaimana kita bisa menggunakan self join dengan left join.

PILIH ( CONCAT (al1.nama_pertama, '->',al2.email)) SEBAGAI detail,al1.payment_id DARI pengguna al1 KIRI IKUTI pengguna al2 PADA al1.id=al2.id;

Hasil keluarannya di bawah ini:

Kesimpulan

Panduan ini memandu Anda melalui bagaimana Anda dapat menggunakan MySQL self join untuk bergabung dengan tabel dengan dirinya sendiri.

Terima kasih telah membaca.