Множественное «внутреннее соединение» с помощью openquery

#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.

Это «Представление» содержит все необходимые «соединения».

Затем я создаю запрос, указывающий на «Представление».