Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Converter Legacy SQL Outer JOIN *=, =* para ANSI


Acho que o problema com sua tradução é que você está usando condições nas tabelas corretas no where cláusula em vez de no on cláusula.
Quando tentei traduzir, esta é a tradução que obtive:
FROM counterparty cp
LEFT JOIN counterparty_alias ca1 ON cp.code = ca1.counterparty_code 
                                AND ca1.alias = 'Party1'
LEFT JOIN counterparty_alias ca2 ON cp.code *= ca2.counterparty_code 
                                AND ca2.alias = 'Party2'
LEFT JOIN party p ON cp.code = p.child_code
WHERE cp.category in ('CAT1','CAT2')

No entanto, é difícil saber se estou correto, pois você não forneceu dados de exemplo, resultados desejados ou mesmo uma consulta completa.