Добрый день,
имеем следующую табличку:
ID AutoNumber
CurrentDevice Number (выбираем описание из таблички devices)
SourceDevice Number (выбираем описание из таблички devices)
SourcePort Number (выбираем описание из таблички ports)
InVPI Number
InVCI Number
DestDevice Number (выбираем описание из таблички devices)
DestPort Number (выбираем описание из таблички ports)
OutVPI Number
OutVCI Number
...
пока используем access, но в планах держим что нибудь более удобное для многопользовательского режима. Вопрос такой, для создания полной таблички использую следующий запрос:
SELECT
DISTINCT (ATM_PVC.ID),
(SELECT ATM_Device.DeviceName FROM ATM_Device WHERE ATM_Device.ID = ATM_PVC.CurrentDevice) AS CurrentDevice,
(SELECT ATM_Device.DeviceName FROM ATM_Device WHERE ATM_Device.ID = ATM_PVC.SourceDevice) AS SourceDevice,
(SELECT ATM_Port.PortName FROM ATM_Port WHERE ATM_Port.ID = ATM_PVC.SourcePort) AS SourcePort,
ATM_PVC.InVPI,
ATM_PVC.InVCI,
(SELECT ATM_Device.DeviceName FROM ATM_Device WHERE ATM_Device.ID = ATM_PVC.DestDevice) AS DestDevice,
(SELECT ATM_Port.PortName FROM ATM_Port WHERE ATM_Port.ID = ATM_PVC.DestPort) AS DestPort,
ATM_PVC.OutVPI,
ATM_PVC.OutVCI
FROM
ATM_Device, ATM_PVC;
Насколько такой запрос правильно составлен в плане совместимости с ANSI SQL и дальнейшей переносимости, ну например на mysql? Поля lookup accessa, подозреваю не самый идеальный способ реализации данной структуры, но для данной реализации обилие вложенных подзапросов наводит на мысли о снижении производительности при увеличении количества столбцовб как все-таки многоуважаемый ALL реализует подмену индекса на описание?
С уважением,
Александр