две таблицы приведеныTSQL Поиск строк в другой таблице
PilotGroup Таблица
Pilot Plane
Jon Smith A1-Fighter
Jon Smith B1-Fighter
Gravell A2-Fighter
Jon Skeet A1-Fighter
Jon Skeet B1-Fighter
Jon Skeet A4-Fighter
Gravell A5-Fighter
SouthOperation Таблица
Plane
A1-Fighter
B1-Fighter
Задача состоит в том, чтобы напечатать пилотные имена, которые обучены как на A1-Fighter, так и на B1-Fighter.
я получил результат, выполнив
select distinct pilot from PilotGroup as pg1
where not exists
(
select * from SouthOperation Sop where
not exists
(
select *from PilotGroup as pg2 where (pg1.pilot = pg2.pilot)
and
(pg2.plane= Sop.plane)
)
)
Есть ли какие-либо альтернативы для поиска строк против другой таблицы?
Относительно ответа AakashM, просто чтобы пояснить, решение здесь - представить пилотов, обучающихся на всех самолетах, перечисленных в SouthOperation, без необходимости знать, какие самолеты находятся в этой таблице. –