#inner-join #openquery
#внутреннее соединение #openquery
Вопрос:
Я пытаюсь перевести SQL-запрос в OPENQUERY. У меня есть этот код, который хорошо работает:
Select
F_ART.CODART,
F_ART.REFART,
F_ART.DESART,
F_LTA.PRELTA,
F_STO.DISSTO,
F_PRO.NOCPRO,
F_FAM.DESFAM,
F_SEC.DESSEC
From
[LINKED]...F_ART Inner Join
[LINKED]...F_FAM On F_FAM.CODFAM = F_ART.FAMART Inner Join
[LINKED]...F_LTA On F_LTA.ARTLTA = F_ART.CODART Inner Join
[LINKED]...F_PRO On F_PRO.CODPRO = F_ART.PHAART Inner Join
[LINKED]...F_SEC On F_SEC.CODSEC = F_FAM.SECFAM Inner Join
[LINKED]...F_STO On F_STO.ARTSTO = F_ART.CODART
Я хочу преобразовать его для использования OPENQUERY, поэтому я попробовал этот код:
Select
CODART,
REFART,
DESART,
IMGART,
DISSTO
From
OPENQUERY ([LINKED], 'SELECT * FROM
F_ART Inner Join
F_STO On (F_STO.ARTSTO = F_ART.CODART)
')
Но когда я добавляю следующие предложения внутреннего соединения, это завершается неудачей.
Могу ли я использовать множественное внутреннее соединение с openquery?
Я использую этот код из MS ACCESS для запроса связанного SQL-сервера.
Ответ №1:
Я решил эту проблему, создав «Представление» на сервере SQL.
Это «Представление» содержит все необходимые «соединения».
Затем я создаю запрос, указывающий на «Представление».