【发布时间】:2016-06-22 22:51:30
【问题描述】:
我正在尝试获取一个表中存在的部门 ID 列表 (PS_Y_FORM_HIRE),但在另一表 (PS_DEPARTMENT_VW) 中不存在。
以下是我所拥有但不起作用的基础知识:
SELECT h.DEPTID FROM PS_Y_FORM_HIRE h, PS_DEPARTMENT_VW d WHERE NOT EXISTS (
SELECT d1.DEPTID FROM PS_DEPARTMENT_VW d1 WHERE d1.DEPTID = h.DEPTID
and d1.SETID_GL_DEPT = 'IDBYU'
);
我正在尝试在 SQL Developer 中形成此查询,但它只返回一长串空白列表(在旋转/运行查询很长时间之后)。
此外,我需要它具有生效日期,以便它只获取正确的生效日期行,但我不确定如何以及在何处将其合并到查询中。
编辑我没有提到只有部门表是有效日期的。表格租用表不是。我需要从此查询中获取当前有效日期的行(以确保数据准确)。
还要注意DEPTID 不是PS_Y_FORM_HIRE 上的键,而是PS_DEPARTMENT_VW 上的键。 (以及SETID_GL_DEPT 和EFFDT)。
同样,理想情况下,我将列出所有出现在PS_Y_FORM_HIRE 中但不在PS_DEPARTMENT_VW 中的部门ID。
【问题讨论】:
-
你要找的概念叫“反连接”
标签: sql oracle peoplesoft