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
SELECT employee.*, department.* FROM employee LEFT JOIN department ON employee.DepartmentID = department.DepartmentID
Langkah 2: Buat jadual sambung dalam nilai nol
SELECT employee.*, department.* FROM department LEFT JOIN employee ON employee.DepartmentID = department.DepartmentID WHERE employee.DepartmentID IS NULL
Langkah 3: Gabungkan semua jadual
Akhir sekali, gabungkan dua jadual LEFT JOIN menggunakan UNION ALL untuk mencipta FULL OUTER JOIN:
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 )
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!