![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Select - подскажите [D7, MSSQL]
apl © (2006-03-22 10:35:00)Мастера, прошу помощи.
В бызе MSSQL есть три таблицы:
Tabl_a (* работники *) поля tab_N,fio
Tabl_b (* выполненные работы *) поля tab_N,kod_r
Tab_c (* виды работ *) поля kod_r,name_r
Необходимо построить список всех работников с названиями
всех выполненных работ. В список необходимо включить всех для кого есть записи о выполненных работах и тех, для кого записей нет. Необходимо получить список вида
Tabl_a.tab_N tabl_a.fio Tabl_b.kod_r Tabl_c.name_r
Написал следующее:
Select * from tabl_a,tabl_b,Tabl_c where
tabl_a.tab_n=tabl_b.tab_n and tabl_b.kod_r-tabl_c.kod_r
При этом не включаются в список те, кто не имеет записей в tabl_b
Как правильно получить нужный результат?
ЮЮ (2006-03-22 11:10:00) [1]Похоже, в доках закопался :)
Select * from
tabl_a,
LEFT JOIN tabl_b ON tabl_a.tab_n=tabl_b.tab_n
LEFT JOIN Tabl_c ON tabl_b.kod_r=tabl_c.kod_r
Johnmen (2006-03-22 10:40:00) [2]см. доки по SQL, соединение таблиц LEFT/RIGHT JOIN
apl (2006-03-22 10:36:00) [3]Поправочка:
Select * from tabl_a,tabl_b,Tabl_c where
tabl_a.tab_n=tabl_b.tab_n and tabl_b.kod_r=tabl_c.kod_r