【问题标题】:How to join result table with existing table, on repeating values?如何在重复值上将结果表与现有表连接?
【发布时间】:2021-08-28 00:16:50
【问题描述】:

如果 emp_id 重复,我想加入结果表。并显示员工的名字。

结果表代码:

SELECT emp_id, COUNT(*)
FROM Employment
GROUP BY emp_id
HAVING COUNT(*) > 1

就业表:

emp_id task_complete year
1 task1 2020
1 task2 2020
3 task3 1999
4 task4 2001

员工表:

emp_id first_name last_name
1 Jon Doe
2 Don Juan
3 Steve Works
4 Loki Odinsen

所以员工 1 完成了 2 个任务,结果应该是这样的:

emp_id first_name tasks_done
1 Jon 2

【问题讨论】:

  • 所以如果你愿意,你应该加入。它有什么问题?

标签: sql sql-server


【解决方案1】:

这看起来像 group byhaving

select e.emp_id, e.first_name, count(*)
from employee e join
     tasks t
     on e.emp_id = t.emp_id
group by e.emp_id, e.first_name
having count(*) > 1;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-18
    • 2017-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    相关资源
    最近更新 更多