Rumah > pangkalan data > tutorial mysql > SQL JOIN: WHERE vs. ON: Apakah Perbezaan Utama dalam Menapis Data Bergabung?

SQL JOIN: WHERE vs. ON: Apakah Perbezaan Utama dalam Menapis Data Bergabung?

Susan Sarandon
Lepaskan: 2025-01-23 02:49:11
asal
791 orang telah melayarinya

SQL JOIN: WHERE vs. ON: What's the Key Difference in Filtering Joined Data?

SQL JOIN: Memahami Klausa WHERE dan ON

Menguasai SQL JOIN memerlukan pemahaman yang jelas tentang fasal WHERE dan ON. Walaupun kadangkala boleh ditukar ganti, fungsinya berbeza dengan ketara.

WHERE Klausa: Penapisan Selepas Sertai

Klausa WHERE menapis hasil gabungan. Pertimbangkan contoh ini:

SELECT *
FROM Orders
LEFT JOIN OrderLines ON OrderLines.OrderID = Orders.ID
WHERE Orders.ID = 12345;
Salin selepas log masuk

Di sini, fasal WHERE menapis output, hanya menunjukkan baris dengan Orders.ID ialah 12345. Ini terpakai selepas LEFT JOIN telah menggabungkan data daripada Orders dan OrderLines.

ON Klausa: Definisi Syarat Sertai

Klausa ON mentakrifkan syarat bergabung itu sendiri. Perhatikan:

SELECT *
FROM Orders
LEFT JOIN OrderLines ON OrderLines.OrderID = Orders.ID AND Orders.ID = 12345;
Salin selepas log masuk

Klausa ON menetapkan bahawa hanya baris yang OrderLines.OrderID sepadan dengan Orders.ID dan Orders.ID bersamaan 12345 akan disertakan dalam gabungan. Penapisan ini berlaku semasa proses penyertaan.

Perbezaan Semantik Utama

Walaupun WHERE dan ON mungkin menghasilkan hasil yang serupa dengan INNER JOINs, peranan semantik mereka adalah berbeza. WHERE menapis set data gabungan terakhir, manakala ON menentukan baris mana yang disertakan dalam operasi gabungan.

Atas ialah kandungan terperinci SQL JOIN: WHERE vs. ON: Apakah Perbezaan Utama dalam Menapis Data Bergabung?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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