试一下
select * from DQD_BSA_FILES_ALL_TEST T
WHER EXISTS(SELECT 1 FROM DQD_BSA_FILES_ALL_TEST
        WHERE sys_tra_no=T.sys_tra_no AND term_id=T.term_id AND mchnt_cd=T.mchnt_cd
        AND TRANS_ID='S22'  AND trans_st =‘10010’)
AND EXISTS(SELECT 1 FROM DQD_BSA_FILES_ALL_TEST
        WHERE sys_tra_no=T.sys_tra_no AND term_id=T.term_id AND mchnt_cd=T.mchnt_cd
        AND TRANS_ID='R22'  AND trans_st =‘10000’)

解决方案 »

  1.   

    单引号写成中文的了,并且少些了个条件,修正下
    select * from DQD_BSA_FILES_ALL_TEST T
    WHER EXISTS(SELECT 1 FROM DQD_BSA_FILES_ALL_TEST
            WHERE sys_tra_no=T.sys_tra_no AND term_id=T.term_id AND mchnt_cd=T.mchnt_cd
            AND TRANS_ID='S22'  AND trans_st ='10010' and resp_cd4 ='00')
    AND EXISTS(SELECT 1 FROM DQD_BSA_FILES_ALL_TEST
            WHERE sys_tra_no=T.sys_tra_no AND term_id=T.term_id AND mchnt_cd=T.mchnt_cd
            AND TRANS_ID='R22'  AND trans_st ='10000' and resp_cd4 ='00')
      

  2.   

    版主思维快捷啊,学习了,请把S56、R56的也完善进去呗,和S22/R22一样的需求。
      

  3.   

    你的需求不是删除吗?
    仿照这个写两个delete语句不可以吗?
    写一起的话就用or连接一下where (S22和R22的条件)
    or (S56和R56的条件)