合并多个 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>
这会生成一个包含 ks
和 Overdue 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。
最终表格显示每个人的 ks
、Total Tasks
和 Overdue Tasks
。
以上是如何使用 SQL 连接合并个人的任务和延迟任务计数?的详细内容。更多信息请关注PHP中文网其他相关文章!