Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Запрос к 3 таблицам. [D6, IB6.x, Дятел]


Aleksej ©   (2004-06-15 14:53:00) 

Наверно, после обеда торможу :-) Есть три таблицы:
"Человеки", "Компьютеры"  и "Связи". В человеках и компах первичные ключи. В таблице "связи" две колонки : "Чел" и "Комп".

Вопрос: как одним запросом вытащить из "Человеков" ФИО и адрес, а из "Компьютеров" компы одной конкретной модели, принадлежащей этим челам.

Получил список компов, одной модели. По нему ИД челов из таблицы связей. Ну и собственно ФИО и адреса челов. НО никак не могу сообразить как к списку челов добавить модель :-(


Aleksej   (2004-06-15 15:25:00) [1]

ЗАРАБОТАЛО!!!
Верно говорят: сытое брюхо к учению глухо.
Все огромное спасибо.


Clickmaker   (2004-06-15 15:07:00) [2]

select m.famil,m.name,m.name2,m.ul,m.dom,m.korpus,m.kwart,k.name as kompname
from mans m, svyaz s, komps k
where s.man_id = m.man_id
and   k.komp_id = s.komp_id
and   k.marka = 'PENTIUM2'


Johnmen   (2004-06-15 15:07:00) [3]

SELECT * FROM "Связи"
JOIN "Человеки" ON <условие связи c "Связи">  
JOIN "Компьютеры" ON <условие связи c "Связи">  
WHERE <модель>=<конкретная модель>


Aleksej   (2004-06-15 15:05:00) [4]

Все поля текстовые, кроме первичных ключей.
К инфе, которую дает запрос нужно добавить несколько полей из таблицы komps


Aleksej   (2004-06-15 15:03:00) [5]

select famil,name,name2,ul,dom,korpus,kwart  from mans where man_id in(select mans from svyaz where komp in
(select komp_id from komps where marka='PENTIUN2'))


bushmen   (2004-06-15 14:59:00) [6]

>из "Компьютеров" компы одной конкретной модели

Какое это поле?


Sandman25   (2004-06-15 14:55:00) [7]

Напишите запрос, кторый Вы уже успели сделать...


Наверх

Титульная страница Поиск, карта сайта Написать письмо