Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menggabungkan Dua Pertanyaan PILIH untuk Mengira Tugasan dan Tugasan Lewat untuk Setiap Individu?

Bagaimana untuk Menggabungkan Dua Pertanyaan PILIH untuk Mengira Tugasan dan Tugasan Lewat untuk Setiap Individu?

Mary-Kate Olsen
Lepaskan: 2025-01-08 22:32:43
asal
706 orang telah melayarinya

How to Combine Two SELECT Queries to Count Tasks and Late Tasks for Each Individual?

Menggabungkan Pertanyaan PILIH untuk Analisis Tugasan Komprehensif

Pertanyaan pangkalan data selalunya memerlukan gabungan data daripada berbilang sumber untuk mendapatkan gambaran yang lengkap. Ini melibatkan penggabungan hasil beberapa SELECT pernyataan—satu teknik penting dalam banyak konteks pengaturcaraan.

Pertimbangkan senario yang melibatkan pangkalan data tugasan dengan tarikh akhir dan tugasan individu. Objektifnya adalah untuk menjana laporan yang menunjukkan setiap individu, jumlah kiraan tugas mereka dan bilangan tugas yang tertunggak.

Ini boleh dicapai menggunakan dua pertanyaan SELECT berasingan: satu untuk mengira tugasan bagi setiap individu dan satu lagi untuk mengira tugasan tertunggak (di mana Age melebihi tarikh akhir yang telah ditetapkan PALT). Untuk menyatukan maklumat ini, LEFT JOIN digunakan. Ini memastikan semua individu daripada pertanyaan pertama disertakan, dengan memadankan kiraan tugas tertunggak daripada pertanyaan kedua. Gabungan adalah berdasarkan lajur ks (pengecam individu).

Pertanyaan gabungan adalah seperti berikut:

<code class="language-sql">SELECT t1.ks, t1.[# Tasks], COALESCE(t2.[# Late], 0) AS [# Late]
FROM 
    (SELECT ks, COUNT(*) AS '# Tasks' FROM Table GROUP BY ks) t1
LEFT JOIN
    (SELECT ks, COUNT(*) AS '# Late' FROM Table WHERE Age > Palt GROUP BY ks) t2
ON t1.ks = t2.ks;</code>
Salin selepas log masuk

Output ialah jadual yang menyenaraikan ks setiap individu, jumlah kiraan tugas mereka (# Tasks) dan bilangan tugas tertunggak (# Late). COALESCE mengendalikan kes di mana individu tidak mempunyai tugas tertunggak, memberikan nilai 0 kepada # Late. Ini memberikan ringkasan yang komprehensif dan tepat.

Atas ialah kandungan terperinci Bagaimana untuk Menggabungkan Dua Pertanyaan PILIH untuk Mengira Tugasan dan Tugasan Lewat untuk Setiap Individu?. 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