как использовать составной ключ с ключевым словом IN в MS Access - PullRequest
0 голосов
/ 27 сентября 2010

Я хочу написать следующий (псевдо) оператор SQL в MS Access:

Select C 
from MyTable
where (A, B) IN (select distinct A,B from MyTable);

Я попытался, но получил жалобу: «Вы написали подзапрос, который может возвращать более одного поля без использованияEXISTS зарезервированное слово в предложении FROM основного запроса. "

Я ценю любые отзывы.

1 Ответ

0 голосов
/ 27 сентября 2010

Вы можете использовать внутреннее объединение в качестве фильтра:

select  c
from    MyTable t1
inner join
        (
        select  distinct
                a
        ,       b
        from    OtherTable
        ) t2
on      t1.a = t2.a
        and t1.b = t2.b

(Я предполагаю, что у вас есть две таблицы, потому что запрос не имеет большого смысла для одной таблицы. Очевидно, что все комбинации A и B, которые находятся в Таблице 1, будут «также» в Таблице 1.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...