【问题标题】:sql compare count from 2 tablessql比较2个表的计数
【发布时间】:2016-07-26 19:44:43
【问题描述】:

我有 2 个表 - 表 1 包含已完成任务的列表,而表 2 包含任务的总列表。见下文:

request_tasks
request_id
status_id

project_tasks
project_request_id
project_task_id

我需要统计request_tasks中的条目(按request_id分组)和project_tasks中的条目(按project_task_id分组)并比较两个表的结果。

所以,如果request_tasks 有 3 个条目用于 request_id 1 其 status_id = 'Completed' 但在 project_tasks 中有 5 个条目用于 project_request_id 1 我想知道这一点。

我正在尝试查看哪些project_request_id 条目尚未完成所有任务。

我试过了

select project_request_id from project_tasks
where (select count(project_request_id) from project_tasks group by project_request_id) > (select count(request_id) from request_tasks)

但是我得到错误子查询返回不止一行。

如果我不够清楚,请提出建议。我有一个执行此操作的查询,但我的机器的系统更新丢失了查询,所以我试图回忆我以前是如何做到的。

【问题讨论】:

  • 请重新提出您的问题

标签: mysql sql


【解决方案1】:

这应该返回按状态分组的两者的计数......然后你可以添加你需要的计算

select a.status_id, a.count(*), b.count(*) 
from  request_tasks as a
left join project_tasks as b
group by  a.status_id

【讨论】:

    【解决方案2】:

    这 50% 为你的答案现在解释你想要如何比较结果?!!

    第一次计数:

    select request_id,count(*)
    from request_tasks
    group by request_id
    

    秒数:

    select project_request_id,count(*)
    from project_tasks
    group by project_request_id
    

    【讨论】:

    • 这是我的问题 - 我知道我可以执行 sql 查询来获取计数,但我无法弄清楚如何在同一个查询中获得两个计数并进行比较
    • 你想要什么样的比较准确发布你想要的结果的例子
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-02-04
    • 2011-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多