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

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

Запрос предка и потомка


YurikGl ©   (2004-04-06 13:14:00) 

Что-то туплю уже сутра.
Если упростить задачу то:
Есть две таблицы

Люди      Родственные связи
ID        IdРодитель
Имя       IdРебенок

Как составить таблицу, состоящую из четырех полей IdРодителя,ИмяРодителя,IdРебенка,ИмяРебенка?

Select .....?


ЮЮ   (2004-04-08 02:48:00) [1]

>Интересно, почему?

Что значит не работает?


YurikGl   (2004-04-07 09:04:00) [2]

В моем случае бездетные не нужны.
Заметил такой глюк в IB (в Access все OK)

Если упростить то будет следующее

Если
from  Link, People People2,People
то работает
если
from  Link,P eople, People People2
то нет.

Интересно, почему?


ЮЮ   (2004-04-07 03:01:00) [3]

>Придумал проще

Так бездетных потеряешь.

З.Ы. сам z предпочитаю не соединять в WHERE условия связи таблиц и условия отбора записей: и нагляднее и связь не упустишь:

SELECT
FROM
 People
 LEFT JOIN Link ON Link.idParent=People.idPeople
 LEFT JOIN People People2 ON Link.IdChild=People2.IdPeople
WHERE
 ...


YurikGl   (2004-04-06 20:53:00) [4]

Придумал проще
select
Links.ParentId, People.Name, Links.ChildId, People2.Name
from People, Link, People People2,
Where Link.idParent=People.idPeople and Link.IdChild=People2.IdPeople


Digitman   (2004-04-06 13:30:00) [5]

SELECT Links.ParentId, People.Name, Links.ChildId, Children.Name
FROM (Links INNER JOIN People ON Links.ParentId = People.Id) INNER JOIN People AS Children ON Links.ChildId = Children.Id
ORDER BY Links.ParentId;


Наверх

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