Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 从oracle中的一个表中获取关系数据_Sql_Oracle - Fatal编程技术网

Sql 从oracle中的一个表中获取关系数据

Sql 从oracle中的一个表中获取关系数据,sql,oracle,Sql,Oracle,我有一个表,我们称之为data\u employee。它包括: (employee_name, username, department, division, group, job) 数据如下: (john_doe, john.doe, **it_sec**, null, it, **network_adm**) (smith_jaeger, smith.jaeger, **it_sec**, null, it, **Department_Head**) 我想查询用户名的上级,即: if u

我有一个表,我们称之为
data\u employee
。它包括:

(employee_name, username, department, division, group, job)
数据如下:

(john_doe, john.doe, **it_sec**, null, it, **network_adm**)
(smith_jaeger, smith.jaeger, **it_sec**, null, it, **Department_Head**)
我想查询用户名的上级,即:

if username has department,
then filter their department (e.x: it_sec) and the job department_head
if username has not department,
then filter their division like above and so on deligate until group head
我尝试过子查询,但有时它们会返回多个数据,因为我有子
组头

并且数据也写入了
集团负责人

例如,结果是:

当我想找到john_doe的部门主管时,结果是 史密斯·杰格

考虑这个查询:

select de1.employee_name, de2.employee_name
from data_employee de1
join data_employee de2
on ((de1.department = de2.department) and (de1.job <> 'Department_Head') and (de2.job = 'Department_Head')) or
((de1.department is null) and (de1.division = de2.division) and (de2.job <> 'Department_Head'))
选择de1.employee\u name、de2.employee\u name
从数据单元de1
加入数据单元2
在((de1.department=de2.department)和(de1.job‘department_Head’)以及(de2.job=‘department_Head’)或
((de1.department为空)和(de1.division=de2.division)和(de2.job“department\u Head”))

第一个标准在<代码>或<代码>之前,第二个标准在<代码>或<代码>之后。在第一个标准中,重要的是要指定员工是部门负责人,而另一个标准是不要避免结果表明部门负责人是他/她自己的老板。对于第二个标准,我们没有排除重复项,因为如果同一部门可能有不同的部门(不应该是这样,但我们不能排除不一致性,尤其是如果这些是文本数据),那么同一部门的不同部门的多个主管将出现在结果中。此外,如果有多个部门负责人,这也是一个问题。

请让我们轻松一点,并向我们展示您的预期结果。到目前为止您尝试了什么?很抱歉,问题不清楚,因为我无法在此处发布我的真实架构,但它更接近我的真实架构。再次感谢你