Lebih
Apa DIRI BERGABUNG dan ketika anda akan menggunakannya?
Mungkin Duplikat: sql: self-bergabung menjelaskan
Apa diri bergabung dan ketika anda akan menggunakannya? Saya don't memahami diri bergabung jadi orang awam penjelasan dengan contoh akan menjadi besar.
97
5
Anda menggunakan self bergabung ketika sebuah tabel referensi data dalam dirinya sendiri.
E. g., sebuah
Karyawan
tabel dapat memilikiSupervisorID kolom
yang menunjuk kepada karyawan yang adalah bos dari karyawan saat ini.Untuk query data dan mendapatkan informasi untuk kedua orang dalam satu baris, anda bisa diri bergabung seperti ini:
Nah, salah satu contoh klasik adalah di mana anda ingin mendapatkan daftar karyawan dan manajer langsung mereka:
It's pada dasarnya digunakan di mana tidak ada hubungan antara baris yang disimpan dalam tabel yang sama.
Dan sebagainya...
Self join adalah hanya ketika anda bergabung dengan sebuah meja dengan dirinya sendiri. Tidak ada
DIRI BERGABUNG dengan
kata kunci, anda hanya menulis biasa bergabung mana kedua tabel yang terlibat dalam bergabung adalah meja yang sama. Satu hal yang perlu diperhatikan adalah bahwa ketika anda bergabung maka perlu menggunakan alias untuk tabel jika nama tabel akan menjadi ambigu.Hal ini berguna ketika anda ingin berhubungan pasang baris dari tabel yang sama, misalnya hubungan orangtua - anak. Berikut permintaan kembali nama-nama dari semua langsung subkategori kategori 'Dapur'.
SQL diri bergabung hanya normal bergabung yang digunakan untuk bergabung dengan meja untuk dirinya sendiri.
Contoh:
Anda'd gunakan self-join pada tabel yang "pada" untuk dirinya sendiri - misalnya sebuah tabel karyawan mana managerid adalah kunci asing untuk employeeid di meja yang sama.
Contoh: