Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.09;
Скачать: CL | DM;

Вниз

Select - подскажите   Найти похожие ветки 

 
apl   (2006-03-22 10:35) [0]

Мастера, прошу помощи.
В бызе 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

Как правильно получить нужный результат?


 
apl   (2006-03-22 10:36) [1]

Поправочка:
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


 
Johnmen ©   (2006-03-22 10:40) [2]

см. доки по SQL, соединение таблиц LEFT/RIGHT JOIN


 
ЮЮ ©   (2006-03-22 11:10) [3]

Похоже, в доках закопался :)

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



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

Текущий архив: 2006.04.09;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
2-1142518530
Dust
2006-03-16 17:15
2006.04.09
комноненты Indi, что я делаю неправильно?


11-1123317561
Serg777
2005-08-06 12:39
2006.04.09
Маска файла *.* и файл без расширения


2-1143487831
EHOT
2006-03-27 23:30
2006.04.09
Ждущий режим


2-1143105289
Der Nechk@ssoff
2006-03-23 12:14
2006.04.09
Сканирование папки


4-1137403828
Senator1979
2006-01-16 12:30
2006.04.09
очередь принтера