Помогите сочинить запрос

Запросы, планы, оптимизация запросов, ...

Модераторы: kdv, CyberMax

Ответить
SenA
Сообщения: 3
Зарегистрирован: 16 ноя 2006, 21:25

Помогите сочинить запрос

Сообщение SenA » 17 дек 2006, 17:50

Уважаемые эсперты!

Помогите сочинить запрос:
Есть таблица главных объектов (Master) и таблица подчиненых объектов (Slave)

Код: Выделить всё

Select Master.Name
From Master INNER JOIN Slave On Master.Id=Slave.Id
Where Slave.Color ="Red" OR Slave.Color ="White" 
В результате получаю имена из Master которые присобачились : или к белому, или к красному, или к белому и красному Slave.Color.
А я хочу только ПОСЛЕДНИХ, т.е тех, которые соединились и с белым и с красным!

Должен все это делать в Interbase 6.5 :oops:

Буду благодарен сильно..

CyberMax
Заслуженный разработчик
Сообщения: 638
Зарегистрирован: 31 янв 2006, 09:05

Сообщение CyberMax » 18 дек 2006, 01:56

Может быть вместо

Код: Выделить всё

From Master INNER JOIN Slave On Master.Id=Slave.Id
надо

Код: Выделить всё

From Master INNER JOIN Slave On Master.Id=Slave.Id_Master
?
Джойнить надо по ПК мастера и полю внешнего ключа слейва, а не по ПК обоих таблиц :).

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 18 дек 2006, 08:45

вообще то надо бы грабера читать. там есть такой запрос.

Ответить