Вниз
Скачать: CL | DM;

Запрос предка и потомка   Найти похожие ветки 

← →
YurikGl ©   (2004-04-06 13:14) [0]

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

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

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

Select .....?


← →
Digitman ©   (2004-04-06 13:30) [1]

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;


← →
YurikGl ©   (2004-04-06 20:53) [2]

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


← →
ЮЮ ©   (2004-04-07 03:01) [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-07 09:04) [4]

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

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

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

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


← →
ЮЮ ©   (2004-04-08 02:48) [5]

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

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



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.034 c
9-1069597008
mrAld
2003-11-23 17:16
2004.05.02
o fps


14-1081256066
Maxim Vetera
2004-04-06 16:54
2004.05.02
Print Scrn -> На принтер


6-1079087976
Dimmm
2004-03-12 13:39
2004.05.02
управление удаленным компьютером по локальной сети


4-1078844305
Ландграф Павел
2004-03-09 17:58
2004.05.02
Нажатие кнопки на чужом окне


1-1081972895
Вадим
2004-04-15 00:01
2004.05.02
Сократить имя файла




   Наверх