Комбинация списка в предложении where - PullRequest
0 голосов
/ 27 мая 2020

Вот сценарий, у меня есть входные данные и таблица table1

   Input  Data                       Table1
Customer Id   Campaign ID       CustomerId   CampaignID
    1              1                 4            2
    1              2                 6            3
    2              3                 1            1
    1              3                 5            5
    4              2                 9            8                         
    4              4
    5              5

Я хочу запросить table1, чтобы он возвращал только те значения из предложения where, которых нет в table1 . Таким образом, результат будет следующим:

                      Result

            Customer Id   Campaign ID      
                1             2       
                2             3        
                1             3
                4             4
                5             5  

Таким образом, запрос должен быть примерно таким:

select CustomerId, CampaignID from Table1 
where Customer Id in (Input data for customer id) and CampaignId in (Input data for campaign id)

. Я знаю, что этот запрос неверен, но может кто-нибудь помочь.

Есть ли способ отфильтровать значения, указанные в предложении where, в зависимости от того, присутствуют ли они в table1?

PS table1 primary ключ (CustomerId, CampaignID)

1 Ответ

0 голосов
/ 27 мая 2020

Это будет работать как для вашего сценария. Но он не будет отображать последнюю запись результата 5,5, так как он не соответствует вашим требованиям.

select * from input where (cust_id, camp_id) not in (select cust_id, camp_id from table1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...