Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Преобразувайте Legacy SQL Outer JOIN *=, =* в ANSI

Мисля, че проблемът с вашия превод е, че използвате условия на правилните таблици в where клауза вместо в on клауза.
Когато се опитах да го преведа, това е преводът, който имам:

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

Трудно е обаче да разбера дали съм прав, тъй като не предоставихте примерни данни, желани резултати или дори пълна заявка.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Предпочитан метод за съхранение на пароли в базата данни

  2. Кой ред има най-висока стойност?

  3. Разбиране на SQL Server ALTER TABLE ADD COLUMN Инструкция

  4. Определете размера на реда за таблицата

  5. Генерирайте CREATE скриптове за списък с индекси