Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Mencapai SERTAI LUAR PENUH dalam SQLite?

Bagaimanakah Saya Boleh Mencapai SERTAI LUAR PENUH dalam SQLite?

Patricia Arquette
Lepaskan: 2025-01-11 07:45:40
asal
179 orang telah melayarinya

How Can I Achieve a FULL OUTER JOIN in SQLite?

Melaksanakan FULL OUTER JOIN dalam SQLite

SQLite ialah enjin pangkalan data yang biasa digunakan yang menyediakan pelbagai operasi sambungan, termasuk INNER JOIN dan LEFT JOIN. Walau bagaimanapun, SQLite tidak menyokong FULL OUTER JOIN secara asli, yang mungkin menimbulkan beberapa cabaran.

Penyelesaian:

Untuk melakukan FULL OUTER JOIN dalam SQLite, kami boleh menggabungkan LEFT JOIN dan UNION ALL. Kaedah ini terdiri daripada tiga langkah:

  1. Lakukan LEFT JOIN antara dua jadual untuk mendapatkan semua baris dalam jadual kiri walaupun tiada baris yang sepadan dalam jadual kanan.
  2. Lakukan LEFT JOIN antara dua jadual yang sama, tetapi kali ini tukar susunan jadual untuk mendapatkan semua baris dalam jadual kanan walaupun tiada baris yang sepadan dalam jadual kiri.
  3. Gunakan UNION ALL untuk menggabungkan hasil dua LEFT JOIN untuk menggabungkan baris dalam dua jadual.

Contoh:

Pertimbangkan dua jadual berikut:

<code class="language-sql">CREATE TABLE employee (EmployeeID INTEGER PRIMARY KEY, Name TEXT, DepartmentID INTEGER);
CREATE TABLE department (DepartmentID INTEGER PRIMARY KEY, Name TEXT);</code>
Salin selepas log masuk

Untuk melakukan SAMBUNGAN LUAR PENUH antara dua jadual ini, jalankan pertanyaan berikut:

<code class="language-sql">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>
Salin selepas log masuk

Pertanyaan ini akan mendapatkan semula semua baris dalam jadual pekerja dan jabatan, termasuk baris yang tidak mempunyai baris yang sepadan dalam jadual lain.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencapai SERTAI LUAR PENUH dalam SQLite?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan