
組合 SELECT 查詢進行全面的任務分析
資料庫查詢通常需要組合多個來源的資料以獲得完整的圖片。 這涉及連接多個 SELECT 語句的結果——這是許多程式設計環境中的關鍵技術。
考慮一個涉及具有截止日期和個人分配的任務資料庫的場景。 目標是產生一份報告,顯示每個人、他們的任務總數以及逾期任務的數量。
這可以使用兩個單獨的 SELECT 查詢來實現:一個用於計算每個人的任務,另一個用於計算過期任務(其中 Age 超過預定義的截止日期 PALT)。 為了合併這些信息,使用了 LEFT JOIN。 這可確保包含第一個查詢中的所有個人,以及第二個查詢中符合的過期任務計數。連線基於 ks 列(個人識別碼)。
組合查詢如下:
<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>輸出是一個表格,列出每個人的ks、他們的任務總數 (# Tasks) 以及過期任務的數量 (# Late)。 COALESCE 處理個人沒有逾期任務的情況,為 0 分配一個 # Late 值。 這提供了全面而準確的總結。
以上是如何組合兩個 SELECT 查詢來統計每個人的任務和延遲任務?的詳細內容。更多資訊請關注PHP中文網其他相關文章!