2024-07-11
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Di MySQL,LEFT JOIN
Digunakan untuk mengembalikan semua record dari tabel kiri (yaitu tabel di sebelah kiri kata kunci LEFT JOIN), meskipun tidak ada record yang cocok di tabel kanan. Untuk record-record yang tidak cocok pada tabel sebelah kanan, maka bagian tabel sebelah kanan dari result set akan diisi dengan NULL.tentangON
DanWHERE
Penggunaan klausa, mereka masukLEFT JOIN
Perannya berbeda-beda:
ON
Nanti.jika diON
Nanti ada batasan bersyarat tambahan di tabel kanan, yang juga akan diterapkan saat menghubungkan, tetapi tidak akan mempengaruhi prinsip mengembalikan semua catatan dari tabel kiri.JOIN
Kumpulan hasil yang dihasilkan oleh operasi selanjutnya disaring.Ketika kondisi ditempatkanWHERE
klausa, record-record yang tidak memenuhi syarat (baik dari tabel kiri atau tabel kanan) akan dihapus, yang dapat mempengaruhi niat awal untuk mengembalikan semua record dari tabel kiri, terutama saat menangani nilai NULL, Anda harus menjadi ekstra hati-hati.Kasus khusus satu:
Misalkan kita mempunyai dua tabel, yang satu adalahemployees
(meja karyawan), yang lainnya adalahdepartments
(tabel departemen), kami ingin mengetahui semua karyawan dan nama departemennya, meskipun beberapa karyawan tidak ditugaskan ke departemen tertentu.
tabel karyawan:
pengenal | nama |
---|---|
1 | Alice |
2 | Bob |
3 | Karol |
tabel departemen:
pengenal | nama |
---|---|
1 | SDM |
2 | DIA |
3 | Pemasaran |
di dalam,employees
mejadepartment_id
Bidangnya bisa NULL, menunjukkan bahwa tidak ada departemen yang ditugaskan.
Contoh penggunaan AKTIF:
SELECT employees.name, departments.name AS department_name
FROM employees
LEFT JOIN departments ON employees.department_id = departments.id;