sql - 我需要加入一张表和一个子查询

标签 sql

SELECT * FROM Employee
(
   SELECT eid  FROM Assignment
   GROUP BY eid
   HAVING SUM(hours_per_week) > 40
)

这是我用于查找超过 40 小时的 hours_per_week 的代码。子查询返回超过 40 小时的人的 eid。我的问题是如何使用从子查询中获得的 eid 显示 Employee 中的所有人员。哪里?或加入?

最佳答案

使用 WHERE ... IN (SELECT ...)

SELECT col1, col2, ..., coln
FROM Employee
WHERE eid IN
(
   SELECT eid  FROM Assignment
   GROUP BY eid
   HAVING SUM(hours_per_week) > 40
)

关于sql - 我需要加入一张表和一个子查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8144494/

相关文章:

sql - 仅使用 WHERE 子句组合 LIKE 和 IN

mysql - 如何在hibernate中使用Having和group By子句?

java - Ebean 和 ManyToOne 建议

php - stripslashes 对 SQL 注入(inject)的有效性?

sql - 查询以在sql server中检索以相同字符开头和结尾的单词的行

mysql - 如何使用存储过程从多个数据输入返回两个日期之间的数据

javascript - Ajax POST 数据未出现在模式中

php - 如何在使用 PHP 导入 SQL 之前正确转义 CSV 文件

sql - OLEDB 命名参数和分组依据 : "?" won't work

SQL - 分组依据,保留最早的行