Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mendapatkan Data daripada Berbilang Jadual Menggunakan SQL Joins dan Unions?

Bagaimana untuk Mendapatkan Data daripada Berbilang Jadual Menggunakan SQL Joins dan Unions?

Susan Sarandon
Susan Sarandonasal
2025-01-24 01:47:08194semak imbas

How to Retrieve Data from Multiple Tables Using SQL Joins and Unions?

Menguasai Pertanyaan SQL untuk Mendapatkan Data Berbilang Jadual

Panduan ini menunjukkan cara mendapatkan semula data daripada berbilang jadual pangkalan data dengan cekap menggunakan gabungan dan kesatuan SQL.

Memahami Jenis Sertaan

Caburan SQL adalah penting untuk menggabungkan data daripada jadual berkaitan. Dua jenis utama wujud:

  • Gabungan Dalam: Ini hanya mengembalikan baris dengan nilai yang sepadan dalam kedua-dua jadual yang digabungkan.
  • Gabungan Luar: Ini mengembalikan semua baris daripada satu jadual, walaupun tiada nilai yang sepadan dalam jadual yang lain. (Gabungan Luar Kiri, Kanan dan Penuh ialah variasi ini.)

Melaksanakan Gabungan

Untuk melakukan gabungan, nyatakan jadual dan lajur yang digunakan untuk memadankan baris. Contohnya, inner join mendapatkan semula data kereta dan maklumat jenama yang berkaitan:

<code class="language-sql">SELECT *
FROM cars
INNER JOIN brands
ON cars.brand_id = brands.id;</code>

Memanfaatkan Kesatuan

Kesatuan menyediakan kaedah alternatif untuk menggabungkan data. Mereka mengembalikan semua baris daripada semua jadual yang ditentukan, tanpa mengira nilai yang sepadan. Contoh:

<code class="language-sql">SELECT *
FROM cars
UNION
SELECT *
FROM brands;</code>

Perhatikan bahawa UNION mengalih keluar baris pendua; gunakan UNION ALL untuk mengekalkan pendua.

Memilih Antara Gabungan dan Kesatuan

Gunakan cantuman apabila anda memerlukan data daripada jadual dengan nilai yang sepadan (data berkaitan). Gunakan kesatuan apabila menggabungkan data daripada jadual yang tidak berkaitan yang anda inginkan semua baris daripada setiap jadual.

Amalan Terbaik

  • Pilih jenis gabungan yang sesuai: Penyalahgunaan jenis gabungan membawa kepada keputusan yang tidak tepat.
  • Kendalikan kemungkinan pendua dengan kesatuan: UNION ALL menyimpan pendua, manakala UNION mengalih keluarnya.
  • Optimumkan prestasi dengan indeks: Indeks meningkatkan prestasi penyertaan dan kesatuan dengan ketara.

Ringkasan

Penyertaan SQL dan kesatuan adalah penting untuk mendapatkan semula data berbilang jadual yang berkesan. Memahami perbezaan dan amalan terbaik mereka memastikan akses data yang cekap dan tepat.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Data daripada Berbilang Jadual Menggunakan SQL Joins dan Unions?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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