SELECT T.UNIQUEID,
       T.PHONE1,
       T.TOTALCOUNT,
       T.SUCCESSCOUNT,
       T.FIELD02,
       T.FIELD03,
       T.FIELD04,
       T.DELFLAG,
       T.CALLTIME
  FROM TELESALE.USERCALLDATA356 T, T_PBH_PROBLEMWORKITEM S
 WHERE T.FIELD03 = '2'
MINUS
SELECT T.UNIQUEID,
       T.PHONE1,
       T.TOTALCOUNT,
       T.SUCCESSCOUNT,
       T.FIELD02,
       T.FIELD03,
       T.FIELD04,
       T.DELFLAG,
       T.CALLTIME
  FROM TELESALE.USERCALLDATA356 T, T_PBH_PROBLEMWORKITEM S
 WHERE T.FIELD03 = '2'
   AND T.UNIQUEID = S.SERIALNO
   AND (S.NODENAME = '人工回访' OR S.NODENAME = '省反馈')我用的minus去重,效率好低,请告诉别的好方法,谢谢

解决方案 »

  1.   


    --这样可以吗?
    SELECT T.UNIQUEID,
      T.PHONE1,
      T.TOTALCOUNT,
      T.SUCCESSCOUNT,
      T.FIELD02,
      T.FIELD03,
      T.FIELD04,
      T.DELFLAG,
      T.CALLTIME
      FROM TELESALE.USERCALLDATA356 T, T_PBH_PROBLEMWORKITEM S
     WHERE T.FIELD03 = '2'
      AND T.UNIQUEID != S.SERIALNO
      AND (S.NODENAME != '人工回访' AND  S.NODENAME != '省反馈')
      

  2.   

    使用not exists
    SELECT T.UNIQUEID,
      T.PHONE1,
      T.TOTALCOUNT,
      T.SUCCESSCOUNT,
      T.FIELD02,
      T.FIELD03,
      T.FIELD04,
      T.DELFLAG,
      T.CALLTIME
      FROM TELESALE.USERCALLDATA356 T, T_PBH_PROBLEMWORKITEM S
     WHERE T.FIELD03 = '2'
    AND NOT EXISTS
    (
    SELECT 1
      FROM TELESALE.USERCALLDATA356 T1, T_PBH_PROBLEMWORKITEM S
     WHERE T1.FIELD03 = '2'
      AND T1.UNIQUEID = S.SERIALNO
      AND (S.NODENAME = '人工回访' OR S.NODENAME = '省反馈')
    AND  T.UNIQUEID =T1.UNIQUEID 
    )
      

  3.   


    SELECT T.UNIQUEID,
      T.PHONE1,
      T.TOTALCOUNT,
      T.SUCCESSCOUNT,
      T.FIELD02,
      T.FIELD03,
      T.FIELD04,
      T.DELFLAG,
      T.CALLTIME
      FROM TELESALE.USERCALLDATA356 T
     WHERE T.FIELD03 = '2'
      AND not exists(select 1 from  T.UNIQUEID = S.SERIALNO
                     where S.NODENAME = '人工回访' OR S.NODENAME = '省反馈')
      

  4.   


    SELECT T.UNIQUEID,
      T.PHONE1,
      T.TOTALCOUNT,
      T.SUCCESSCOUNT,
      T.FIELD02,
      T.FIELD03,
      T.FIELD04,
      T.DELFLAG,
      T.CALLTIME
      FROM TELESALE.USERCALLDATA356 T
     WHERE T.FIELD03 = '2'
      AND not exists(select 1 from T_PBH_PROBLEMWORKITEM S
                       where T.UNIQUEID = S.SERIALNO and 
                       (S.NODENAME = '人工回访' OR S.NODENAME = '省反馈'))