В Oracle PeopleSoft ERP инструмент PeopleSoft Query (он же PS Query) используется для генерации SQL и запуска его через веб-интерфейс для пользователей, не имеющих прямого доступа к базе данных.
С помощьюСуществуют Я ожидаю, что значения, извлеченные из моего запроса, не существует в моем подзапросе, так как он должен работать.
Но когда я запускаю свой основной запрос, я получаю значения: '0290', '0477'и' 0770 ', который при проверке записи моего подзапроса также существует там.Я уже проверил ключи на всех задействованных таблицах и думаю, что включил их в критерии.
SELECT A.ADMIT_TERM FROM PS_ACAD_PROG A, PS_STDNT_AWD_PR_VW B
WHERE ( A.EFFDT =
(SELECT MAX(A_ED.EFFDT) FROM PS_ACAD_PROG A_ED
WHERE A.EMPLID = A_ED.EMPLID
AND A.ACAD_CAREER = A_ED.ACAD_CAREER
AND A.STDNT_CAR_NBR = A_ED.STDNT_CAR_NBR
AND A_ED.EFFDT <= SYSDATE)
AND A.EFFSEQ =
(SELECT MAX(A_ES.EFFSEQ) FROM PS_ACAD_PROG A_ES
WHERE A.EMPLID = A_ES.EMPLID
AND A.ACAD_CAREER = A_ES.ACAD_CAREER
AND A.STDNT_CAR_NBR = A_ES.STDNT_CAR_NBR
AND A.EFFDT = A_ES.EFFDT)
AND A.EMPLID = B.EMPLID
AND A.ACAD_CAREER = B.ACAD_CAREER
AND B.INSTITUTION = A.INSTITUTION
AND B.STRM = A.ADMIT_TERM
AND NOT EXISTS (SELECT D.STRM
FROM PS_STDNT_CAR_TERM D
WHERE D.EMPLID = A.EMPLID
AND D.ACAD_CAREER = A.ACAD_CAREER
AND D.INSTITUTION = A.INSTITUTION
AND D.STDNT_CAR_NBR = A.STDNT_CAR_NBR
AND D.STRM = A.ADMIT_TERM));
Может кто-нибудь сказать мне, что я сделал не так?