Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mensimulasikan FULL OUTER JOIN dalam SQLite Menggunakan UNION ALL?
Simulasikan FULL OUTER JOIN dalam SQLite: gunakan UNION ALL
SQLite tidak menyokong FULL OUTER JOIN secara asli. Walau bagaimanapun, kita boleh mencapai kesan yang sama dengan menggabungkan dua LEFT JOIN dan menggunakan UNION ALL.
Langkah 1: Buat jadual asas gabungan kiri
<code class="language-sql">SELECT employee.*, department.* FROM employee LEFT JOIN department ON employee.DepartmentID = department.DepartmentID</code>
Langkah 2: Buat jadual sambung dalam nilai nol
<code class="language-sql">SELECT employee.*, department.* FROM department LEFT JOIN employee ON employee.DepartmentID = department.DepartmentID WHERE employee.DepartmentID IS NULL</code>
Langkah 3: Gabungkan semua jadual
Akhir sekali, gabungkan dua jadual LEFT JOIN menggunakan UNION ALL untuk mencipta FULL OUTER JOIN:
<code class="language-sql">SELECT * FROM ( SELECT employee.*, department.* FROM employee LEFT JOIN department ON employee.DepartmentID = department.DepartmentID ) UNION ALL ( SELECT employee.*, department.* FROM department LEFT JOIN employee ON employee.DepartmentID = department.DepartmentID WHERE employee.DepartmentID IS NULL )</code>
Nota: UNION ALL tidak mengalih keluar pendua, jadi hasilnya mungkin mengandungi beberapa nilai pendua.
Atas ialah kandungan terperinci Bagaimana untuk Mensimulasikan FULL OUTER JOIN dalam SQLite Menggunakan UNION ALL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!