Rumah >pangkalan data >tutorial mysql >Bagaimanakah Self Joins Membantu Menghubungkaitkan Data Dalam Satu Jadual?
Pemahaman mendalam tentang sambungan diri: panduan
Dalam sistem pengurusan pangkalan data hubungan, penyertaan sendiri ialah operasi berkuasa yang membolehkan jadual dicantumkan kepada diri mereka sendiri. Ini amat berguna apabila anda perlu membandingkan atau mengaitkan data daripada baris yang berbeza dalam jadual.
Bila hendak menggunakan sambungan diri
Apabila jadual mengandungi lajur yang merujuk kepada data dalam jadual yang sama, anda perlu menggunakan gabungan sendiri. Contoh biasa ialah jadual pekerja, yang mengandungi lajur SupervisorID
yang menunjuk kepada penyelia pekerja semasa.
Untuk melakukan penyambungan sendiri, jadual sebenarnya dibahagikan kepada dua keadaan, selalunya dipanggil e1
dan e2
masing-masing. e1
mewakili jadual asal, manakala e2
ialah salinannya. Kemudian, syarat bergabung menjadi e1.column = e2.column
.
Contoh
Pertimbangkan jadual pekerja berikut:
EmployeeID | FirstName | LastName | SupervisorID |
---|---|---|---|
1 | John | Doe | 2 |
2 | Mary | Smith | NULL |
3 | Jane | Brown | 1 |
Untuk menanyakan data dan mendapatkan maklumat tentang pekerja dan penyelia mereka dalam satu baris, anda boleh menggunakan penyertaan sendiri:
<code class="language-sql">SELECT e1.EmployeeID, e1.FirstName, e1.LastName, e1.SupervisorID, e2.FirstName AS SupervisorFirstName, e2.LastName AS SupervisorLastName FROM Employee e1 LEFT OUTER JOIN Employee e2 ON e1.SupervisorID = e2.EmployeeID</code>
Pertanyaan ini akan mengeluarkan keputusan berikut:
EmployeeID | FirstName | LastName | SupervisorID | SupervisorFirstName | SupervisorLastName |
---|---|---|---|---|---|
1 | John | Doe | 2 | Mary | Smith |
3 | Jane | Brown | 1 | John | Doe |
Atas ialah kandungan terperinci Bagaimanakah Self Joins Membantu Menghubungkaitkan Data Dalam Satu Jadual?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!