首頁 > 資料庫 > mysql教程 > 如何使用 SQL 連線合併個人的任務和延遲任務計數?

如何使用 SQL 連線合併個人的任務和延遲任務計數?

Barbara Streisand
發布: 2025-01-08 22:37:44
原創
932 人瀏覽過

How to Combine Task and Late Task Counts for Individuals Using SQL Joins?

合併多個 SQL 查詢的資料

資料庫管理通常需要整合來自各種來源或表格的資料。 常見的方法是使用 SQL JOIN 操作來組合多個 SELECT 語句的結果。

此範例示範如何組合兩個查詢的資料:一個計算總任務數,另一個計算每個人的逾期任務。目的是建立一個表格,顯示每個人的任務數和逾期任務數。

第一個查詢計算每個人的總任務數:

<code class="language-sql">SELECT ks, COUNT(*) AS "Total Tasks" FROM Table GROUP BY ks</code>
登入後複製

這會產生一個包含 ks(個人識別碼)和 Total Tasks.

的表

第二個查詢統計每個人的逾期任務:

<code class="language-sql">SELECT ks, COUNT(*) AS "Overdue Tasks" FROM Table WHERE Age > Palt GROUP BY ks</code>
登入後複製

這會產生一個包含 ksOverdue Tasks 的表。

要合併這些結果,請使用 LEFT JOIN。這確保了第一個查詢中的所有個人都被包括在內,即使他們沒有逾期的任務。

組合查詢為:

<code class="language-sql">SELECT t1.ks, t1."Total Tasks", COALESCE(t2."Overdue Tasks", 0) AS "Overdue Tasks"
FROM 
    (SELECT ks, COUNT(*) AS "Total Tasks" FROM Table GROUP BY ks) t1
LEFT JOIN
    (SELECT ks, COUNT(*) AS "Overdue Tasks" FROM Table WHERE Age > Palt GROUP BY ks) t2
ON (t1.ks = t2.ks);</code>
登入後複製

COALESCE 處理個人缺乏逾期任務的情況,將 NULL 替換為 0。

最終表格顯示每個人的 ksTotal TasksOverdue Tasks

以上是如何使用 SQL 連線合併個人的任務和延遲任務計數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板