surzhanskyalex
Разбирается
Харизма: 0
Офлайн
Сообщений: 4
|
|
« : 04.05.2021, 06:07:53 » |
|
я пытаюсь сделать один запрос к таблицам Node . Address, Equip для формирования списка точек учета с адресами типом и номером прибора. но из-за разной "длины" адреса (в адресе разное количество элементов город, улица, дом , объект) некоторые заводские номера приборов в выборку не попадают. Как этот запрос реализован во ВЗЛЕТ СП-4? одним запросом или ВЗЛЕТ СП на каждый адрес делает отдельный запрос?
SELECT Address.Name AS City, Table_1.Name AS Street, Table_2.Name AS House, Table_3.Name AS Object, Table_4.Name,Table_2.Id, [dbo].[Node].Name, Node.Id, Equip.Name, Equip.SerialNumber FROM Address LEFT JOIN (SELECT Address.Id, Address.AddressId, Address.Name FROM Address) AS Table_1 ON Address.Id= Table_1.AddressId LEFT JOIN (SELECT Address.Id, Address.AddressId, Address.Name FROM Address) AS Table_2 ON Table_1.Id= Table_2.AddressId LEFT JOIN (SELECT Address.Id, Address.AddressId, Address.Name FROM Address) AS Table_3 ON Table_2.Id= Table_3.AddressId LEFT JOIN (SELECT Address.Id, Address.AddressId, Address.Name FROM Address) AS Table_4 ON Table_3.Id= Table_4.AddressId LEFT JOIN [dbo].[Node] ON Table_2.Id= Node.AddressId LEFT JOIN [dbo].Equip ON Node.Id= Equip.Id Where Address.type =1
|