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

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

T-SQL [D6, MSSQL]


Niki ©   (2003-05-06 12:19:00) 

Подскажите с запросом.
Есть таблица с данными, например станков и запчастей к ним. Надо выдать список запчастей и соответствующих им станков; если текущая запись является станком, то не выводить ни какой сответствующей инфы, т.е.

Поля таблицы:
IDItem Name MasterID OthersFields...
-------------------------------------------------------------------
E.g.
1001 Вал 16 1003
1002 Эл.мотор 1003
1003 Станок С1367-В
1004 Резец 5 1005
1005 Станок С99-A
...

и надо получить такой результат:
1001 Вал 16 Станок С1367-В
1002 Эл.мотор Станок С1367-В
1003 Станок С1367-В
1004 Резец 5 Станок С99-A
1005 Станок С99-A

Спасибо


Niki   (2003-05-06 12:47:00) [1]

Спасибо !


MOA   (2003-05-06 12:36:00) [2]

SELECT
t1.Name AS NameDetal,
CASE
WHEN t1.MasterID IS NULL THEN ""
ELSE t2.Name
END AS NameStanok
FROM Tbl t1 LEFT JOIN Tbl t2 ON t2.IDItem=t1.MasterID
ORDER BY IDItem

Удачи!


Соловьев   (2003-05-06 12:29:00) [3]

странно ... первый отсылал последним :))))


Соловьев   (2003-05-06 12:28:00) [4]

select t1.IDItem, t1.Name, t2.Name
from table t1
left join table t2 t1.IDItem=t2.MasterID


Соловьев   (2003-05-06 12:28:00) [5]

select t1.*
from table t1
left join table t2 t1.IDItem=t2.MasterID


Наверх

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