Tutorial ini akan menunjukkan kepada anda cara menggunakan gabungan diri MySQL untuk menggabungkan jadual dengan dirinya sendiri dan membuat data yang disesuaikan.
Penggunaan Asas
Gabungan diri MySQL menggunakan alias jadual untuk memastikan anda tidak mengulangi jadual yang sama lebih dari sekali dalam satu pernyataan.
CATATAN: Sekiranya anda tidak biasa dengan alias meja, pertimbangkan tutorial kami yang lain yang menerangkan konsepnya sepenuhnya.
Sintaks umum untuk menggunakan penggabungan diri serupa dengan yang menggabungkan dua jadual. Walau bagaimanapun, kami menggunakan alias jadual. Pertimbangkan pertanyaan yang ditunjukkan di bawah:
PILIH alias1.cols,alias2.cols DARI tbl1 alias1,tbl2 alias2 DI MANA [keadaan]
Contoh Kes Penggunaan
Mari kita gunakan contoh untuk memahami cara melakukan penyertaan diri MySQL. Katakan anda mempunyai pangkalan data dengan maklumat berikut (Lihat pertanyaan penuh di bawah)
TURUNKAN SKIM JIKA ADA diri;BUAT SKIM diri;
GUNAKAN diri;
BUAT JADUAL pengguna(
ID INT KUNCI UTAMA AUTO_INCREMENT ,
nama pertama VARCHAR (255),
e-mel VARCHAR (255),
pembayaran_id INT ,
langganan INT
);
MASUKKAN KE DALAM pengguna(nama pertama,e-mel,pembayaran_id,langganan) NILAI ('Valerie G. Phillip', '[dilindungi e-mel]', 10001, 1), ('Cerita Sean R.', '[dilindungi e-mel]', 10005, 2), ('Bobby S. Newsome', '[dilindungi e-mel]', 100010, 5);
Kami akan memulakan dengan penyertaan INNER dan akhirnya penyertaan kiri.
Bergabung Sendiri menggunakan Inner Join
Pertanyaan di bawah melakukan penyertaan INNER pada jadual yang dibuat di atas.
PILIH al1.* DARI pengguna al1 DALAM SERTAI pengguna al2 HIDUP al1. langganan=al2. langganan PERINTAH OLEH ID DESC ;Keluaran ditunjukkan di bawah:
Bergabung Sendiri menggunakan Siri Kiri
Pertanyaan contoh di bawah menerangkan bagaimana kita dapat menggunakan gabungan diri dengan gabungan kiri.
PILIH ( KONCAT (al1.first_name, '->',al2.email)) SEBAGAI perincian,al1.pembayaran_id DARI pengguna al1 MENINGGALKAN SERTAI pengguna al2 HIDUP al1.id=al2.id;Hasil output adalah di bawah:
Kesimpulannya
Panduan ini membimbing anda bagaimana anda boleh menggunakan gabungan diri MySQL untuk bergabung dengan jadualnya sendiri.
Terima kasih kerana membaca.