使用不存在转换查询

时间:2013-05-20 06:52:16

标签: oracle11g sqlplus

我使用not in和in得出以下查询。我需要将其转换为使用不存在的查询。

SELECT T_DATE, T_DEPTIME
FROM TOUR
WHERE T_ID NOT IN (
SELECT T_ID 
FROM RESERVATION 
WHERE R_ID IN (
SELECT R_ID 
FROM PRES
WHERE P_ID IN (
SELECT P_ID
FROM PARTICIPANT
WHERE P_STATE = 'FL')));

有人可以帮助我吗?

由于

1 个答案:

答案 0 :(得分:0)

试试这个。

SELECT d.t_date, d.t_deptime
  FROM tour d
 WHERE NOT EXISTS (
          SELECT 1
            FROM reservation a, pres b, participant c
           WHERE c.p_state = 'FL'
             AND b.p_id = c.p_id
             AND a.r_id = b.r_id
             AND a.t_id = d.t_id);