繁体   English   中英

SELECT Column_B FROM tableA where Column_A =? AND SELECT 列 C 来自表 B,其中 B 列 = 表 1 中的 B 列?

[英]SELECT Column_B FROM tableA where Column_A = ? AND SELECT Column C from tableB where Column B = Column B from table 1?

所以我有一个数据库,里面有两个表。

dept_emp 表:

emp_no | dept_no
----------------
001    | 008
002    | 006
etc.   | etc.

部门表:

dept_no | dept_name
--------------------
d001    | Customer Service
d002    | Development
etc.    | etc.

在我的 API 中,我想构建一个对数据库的请求,该请求可以结合这两行代码:

"SELECT dept_no FROM dept_emp WHERE emp_no = ?" 

然后

"SELECT dept_name FROM departments WHERE dept_no = (the previously grabbed dept_no)"

我知道如何在一个使用 JOIN 和 HAVING 的查询中做与此类似的事情(但不那么复杂),但是语法在这里给我带来了困难。 任何建议表示赞赏。

如果每个员工都在一个部门,您可以使用

"SELECT dept_name FROM departments WHERE dept_no = (SELECT dept_no FROM dept_emp WHERE emp_no = ?)"

或者如果可能有多个

"SELECT dept_name FROM departments WHERE dept_no IN (SELECT dept_no FROM dept_emp WHERE emp_no = ?)"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM