Memahami Kebolehtukaran Gabungan KIRI dan KANAN
Penyertaan pangkalan data adalah asas untuk menggabungkan data daripada berbilang jadual berdasarkan lajur yang dikongsi. Walaupun gabungan LEFT
dan RIGHT
kelihatan serupa, susunan mereka memberi kesan ketara kepada keputusan. Walau bagaimanapun, dalam keadaan tertentu, mereka boleh menghasilkan output yang sama.
Mari kita menggambarkan dengan dua contoh jadual:
<code>Table1: Id Name 1 A 2 B Table2: Id Name 1 A 2 B 3 C</code>
Pertimbangkan pertanyaan SQL ini:
<code class="language-sql">SELECT * FROM Table1 LEFT JOIN Table2 ON Table1.id = Table2.id;</code>
<code class="language-sql">SELECT * FROM Table2 RIGHT JOIN Table1 ON Table1.id = Table2.id;</code>
Pertanyaan ini akan mengembalikan set data yang sama. Kedua-duanya mengekalkan semua baris daripada Table1
(jadual kiri dalam pertanyaan pertama, jadual kanan dalam pertanyaan kedua) dan termasuk baris yang sepadan daripada jadual lain.
Perbezaan utama muncul apabila kami menukar jadual:
<code class="language-sql">SELECT * FROM Table2 LEFT JOIN Table1 ON Table1.id = Table2.id;</code>
Pertanyaan ini akan menghasilkan hasil yang berbeza. Oleh kerana Table2
mengandungi Id
(3) yang tidak ditemui dalam Table1
, baris ini akan disertakan dalam output, tidak seperti contoh sebelumnya.
Ringkasnya, sementara SELECT * FROM Table1 LEFT JOIN Table2 ON Table1.id = Table2.id
dan SELECT * FROM Table2 RIGHT JOIN Table1 ON Table1.id = Table2.id
mungkin menghasilkan hasil yang sama dalam kes tertentu, membalikkan jadual dalam gabungan LEFT
atau RIGHT
secara asasnya mengubah hasil. Pertimbangan yang teliti terhadap struktur jadual dan set hasil yang diingini adalah penting apabila memilih antara LEFT
dan RIGHT
cantuman.
Atas ialah kandungan terperinci Bilakah Gabungan Kiri dan Kanan Boleh Ditukar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!