我在员工和工作组之间有以下多对多关系:
employees table ----------------- id empgroups table --------------- employee_id workgroup_id workorders table ---------------- workgroup_id
我正在尝试编写SQL,它将根据员工所属的工作组列出员工的所有工作人员.
这是我的尝试:
SELECT wonum, workgroup_id
FROM workorders
INNER JOIN employees
ON workorders.employee_id = employee_id
INNER JOIN empgroups
ON employees.employee.id = empgroups.employee_id
WHERE employee_id = 2
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
ERROR: schema "employees" does not exist
Run Code Online (Sandbox Code Playgroud)
对不起 - 员工的身份不是employee.id
Den*_*rdy 22
这不是你想要的吗?
SELECT wonum, workgroup_id
FROM workorders
JOIN empgroups
ON empgroups.workgroup_id = workorders.workgroup_id
JOIN employees
ON employees.employee_id = empgroups.employee_id
WHERE employees.employee_id = 2
Run Code Online (Sandbox Code Playgroud)
SELECT w.wonum, w.workgroup_id
FROM workorders w
JOIN empgroups e USING (workgroup_id)
WHERE e.employee_id = 2
Run Code Online (Sandbox Code Playgroud)
employees此查询根本不需要该表。USING在这种情况下缩短语法。表别名也是如此。
| 归档时间: |
|
| 查看次数: |
19634 次 |
| 最近记录: |