我正在尝试获取一个表(PS_Y_FORM_HIRE
)中存在的部门ID的列表,但在另一个表(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
。
SELECT DEPTID
FROM PS_Y_FORM_HIRE
MINUS
SELECT DEPTID
FROM PS_DEPARTMENT_VW
WHERE SETID_GL_DEPT = 'IDBYU';
或者
SELECT DEPTID
FROM PS_Y_FORM_HIRE
WHERE DEPTID NOT IN (
SELECT DEPTID
FROM PS_DEPARTMENT_VW
WHERE SETID_GL_DEPT = 'IDBYU'
)
或者
SELECT DEPTID
FROM PS_Y_FORM_HIRE h
WHERE NOT EXISTS (
SELECT 1
FROM PS_DEPARTMENT_VW d
WHERE SETID_GL_DEPT = 'IDBYU'
AND d.DEPTID = h.DEPTID
)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句