但是我这里如何 一个人又是主管又是总监 那这里如何来进行
时间: 2024-02-17 11:00:38 浏览: 30
如果一个人同时担任主管和总监职位,您可以按照以下方式进行查询:
1. 建立员工职位表格:可以在员工表格和职位表格之间建立一张关联表格,用来记录员工在不同部门中担任的职位信息。这样一来,同一个员工就可以关联多个部门,且可以分别记录每个部门中员工的职位信息。
2. 使用子查询:可以使用子查询来查询与祖级相连的所有员工,然后再通过员工职位表格来获取每个员工在各个部门中的职位信息。最后再根据员工ID和职位信息来查询订单信息。
具体的SQL语句如下所示:
```
SELECT o.* FROM order o
WHERE o.employee_id IN (
SELECT e.employee_id FROM employee e
WHERE e.employee_id = ${manager_id} OR e.manager_id = ${manager_id}
)
AND o.employee_id IN (
SELECT ep.employee_id FROM employee_position ep
WHERE ep.employee_id = o.employee_id AND ep.department_id IN (
SELECT e.department_id FROM employee e
WHERE e.employee_id = ${manager_id} OR e.manager_id = ${manager_id}
)
AND (ep.position = '主管' OR ep.position = '总监')
);
```
这个SQL语句先使用子查询来查询与祖级相连的所有员工,然后再根据员工在各个部门中的职位信息来获取所有隶属于祖级的订单。其中,员工职位表格中记录了员工在不同部门中的职位信息,可以使用IN语句来查询所有符合条件的员工ID。