Миграция устаревших запросов из Sybase в TSQL MSSQL с несколькими левыми соединениями с оператором или - PullRequest
0 голосов
/ 26 апреля 2018

Я хотел бы преобразовать этот устаревший SQL-код Sybase в новый стандарт ANSI TSQL для MS SQL, но я не могу найти правильный путь. Любая помощь будет оценена.

SELECT 3 FROM  x_linea_cred, x_linea_cred_priv, x_clt_prd 
 WHERE x_clt_prd.r_client = @rclient AND
      (x_clt_prd.nro_prod *= x_linea_cred.nro_prod or
       x_clt_prd.nro_prod *= x_linea_cred_priv.nro_prod))

1 Ответ

0 голосов
/ 26 апреля 2018

В настоящее время стандартное обозначение для внешнего соединения - LEFT [OUTER] JOIN. Ваш запрос должен быть преобразован в:

select 3
  from x_clt_prd c
  left join x_linea_cred lc on lc.nro_prod = c.nro_prod
  left join x_linea_cred_priv lcp on lcp.nro_prod = c.nro_prod
 where c.r_client = @rclient
...