Membandingkan Operasi Natural Join dan Inner Join
Sambungan semula jadi dan sambung dalam ialah dua jenis cantuman biasa yang digunakan dalam sistem pengurusan pangkalan data hubungan. Ia berkongsi ciri menggabungkan baris daripada berbilang jadual berdasarkan nilai lajur yang dikongsi, tetapi ia berbeza dalam perlakuan lajur berulang dan spesifikasi kriteria penyambungan.
Sertai Asli
Sambungan semula jadi ialah bentuk sambung dalam yang dipermudahkan yang secara automatik memilih lajur biasa antara jadual yang dicantumkan. Daripada menyatakan lajur penyambungan secara eksplisit, seperti penyambungan dalam, penyambungan semula jadi mengenal pasti dan menggabungkan jadual berdasarkan nama lajur yang sama dalam kedua-dua jadual.
Sambungan Dalam
Sebaliknya, cantuman dalaman memerlukan pengguna untuk menentukan lajur cantuman dengan menggunakan klausa ON atau USING. Klausa ON membandingkan lajur daripada jadual berbeza, manakala klausa USING mengenal pasti lajur biasa antara jadual.
Perbezaan dalam Lajur Terhasil
Salah satu perbezaan utama antara gabungan semula jadi dan inner join ialah bilangan lajur yang dikembalikan dalam hasil. Cantuman semula jadi tidak termasuk lajur berulang daripada hasil, manakala cantuman dalaman mengekalkan semua lajur daripada kedua-dua jadual.
Contoh
Pertimbangkan dua jadual berikut:
TableA: +------------+----------+ | Column1 | Column2 | +-----------------------+ | 1 | 2 | +------------+----------+ TableB: +--------------------+ | Column1 | Column3 | +--------------------+ | 1 | 3 | +---------+----------+
Jika kami melakukan gabungan dalaman pada Lajur1, hasilnya akan merangkumi semua lajur daripada kedua-dua lajur jadual:
INNER JOIN TableA AS a ON a.Column1 = b.Column1 +------------+-----------+----------+----------+ | a.Column1 | a.Column2 | b.Column1| b.Column3| +------------------------+-----------+----------+----------+ | 1 | 2 | 1 | 3 | +------------+-----------+----------+----------+
Sebaliknya, gabungan semula jadi pada Lajur1 hanya akan menyertakan lajur unik, mengalih keluar lajur Lajur1 pendua:
NATURAL JOIN TableA +------------+----------+----------+ | Column1 | Column2 | Column3 | +-----------------------+----------+ | 1 | 2 | 3 | +------------+----------+----------+
Kesimpulan
Walaupun gabungan semula jadi dan dalaman berfungsi untuk tujuan menggabungkan baris daripada berbilang jadual, mereka mempunyai perbezaan yang berbeza dari segi pengendalian lajur dan kaedah menentukan kriteria penyambungan. Memahami perbezaan ini adalah penting untuk gabungan pangkalan data yang berkesan dan mendapatkan semula data dalam pelbagai aplikasi.
Atas ialah kandungan terperinci Apakah perbezaan utama antara cantuman semula jadi dan cantuman dalaman dalam pangkalan data hubungan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!