Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Konwersja starszej wersji SQL Outer JOIN *=, =* na ANSI

Myślę, że problem z twoim tłumaczeniem polega na tym, że używasz warunków w odpowiednich tabelach w where klauzula zamiast w on klauzula.
Kiedy próbowałem to przetłumaczyć, oto tłumaczenie, które mam:

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')

Trudno jednak stwierdzić, czy mam rację, ponieważ nie podałeś przykładowych danych, pożądanych wyników, a nawet kompletnego zapytania.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zrozumienie instrukcji ALTER TABLE ADD COLUMN w programie SQL Server

  2. Co to jest funkcja wartościująca tabelę w programie SQL Server?

  3. Wybór procesora dla SQL Server 2012

  4. Konwertuj datę na inną strefę czasową w SQL Server

  5. Zmień CTE SELECT na funkcję wartości tabeli zdefiniowanej przez użytkownika