2015-04-08 27 views
0

下面表1我只想檢索ID號在一個表中,但不是在另一個表

select 
    nContractPk 
from 
    CustomerPayment 
where 
    nContractPk in (select id    
        from Contract 
        where id in (SELECT nContractPk 
           FROM CustomerPayment 
           GROUP BY nContractPk 
           HAVING COUNT(CASE WHEN bPaid <> 1 THEN 1 END) = 0 
            AND COUNT(CASE WHEN bPaid = 1 THEN 1 END) > 1) 
            AND nStatus = 10) 

這是第二個表:

select 
    nContractPk 
from 
    EmployeePayment 
where 
    nContractPk in (select id  
        from Contract 
        where id in (SELECT nContractPk 
           FROM EmployeePayment 
           GROUP BY nContractPk 
           HAVING COUNT(CASE WHEN bPaid <> 1 THEN 1 END) = 0 
            AND COUNT(CASE WHEN bPaid = 1 THEN 1 END) > 1) 
            AND nStatus = 10) 

我想要檢索的唯一ID退出客戶支付,但不支持工作人員支付

請幫忙。

在此先感謝

回答

0

嘗試左邊的兩個表之間的連接,並從其他如下過濾掉空:

SELECT c.nContractPk 
FROM CustomerPayment c LEFT JOIN EmployeePayment e 
ON c.nContractPk = e.nContractPk 
WHERE e.nContractPk IS NULL 
相關問題