Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menyertai Berbilang Jadual dalam MySQL untuk Mendapatkan Data Hierarki dan Hubungan?

Bagaimana untuk Menyertai Berbilang Jadual dalam MySQL untuk Mendapatkan Data Hierarki dan Hubungan?

Linda Hamilton
Lepaskan: 2024-12-14 21:01:10
asal
273 orang telah melayarinya

How to Join Multiple Tables in MySQL to Retrieve Hierarchical and Relational Data?

Menyertai Pelbagai Jadual dalam MySQL

Menyertai Jadual Pelajar, Kursus dan Jambatan

Untuk mendapatkan semula nama pelajar dan kursus yang telah mereka pelajari, kita boleh menyertai tiga jadual: Pelajar, Kursus dan Jambatan. Jadual Bridge menetapkan hubungan antara pelajar dan kursus melalui lajur sid dan cid, masing-masing.

Menggunakan sintaks ANSI untuk kejelasan, pertanyaan yang betul untuk menyertai jadual ini dan mendapatkan hasil yang diingini ialah:

SELECT s.name AS Student, c.name AS Course
FROM Student s
INNER JOIN Bridge b ON s.id = b.sid
INNER JOIN Course c ON b.cid = c.id
ORDER BY s.name;
Salin selepas log masuk

Contoh Keputusan:

Student Course
Ahmed Physic
Ahmed Maths
Ahmed Computer
Ahmed Chemistry
Ali Physic
Ali Maths
John Computer
John Chemistry
King Physic
King Maths

Menyertai Pekerja dan Mengurus Jadual untuk Hierarki

Untuk mendapatkan semula struktur hierarki pengurus dan kakitangan, kami boleh menyertai Pekerja dan Urus jadual menggunakan lajur id dan eid, masing-masing. Berikut ialah pertanyaan untuk ini:

SELECT e1.name AS Manager, e2.name AS Staff
FROM Employee e1
INNER JOIN Manage m ON e1.id = m.mid
INNER JOIN Employee e2 ON m.eid = e2.id;
Salin selepas log masuk

Contoh Keputusan:

Manager Staff
Ali King
Ali Mak
Mak Sam
Sam Jon

Atas ialah kandungan terperinci Bagaimana untuk Menyertai Berbilang Jadual dalam MySQL untuk Mendapatkan Data Hierarki dan Hubungan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan