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

Comportamento de junção cruzada (SQLServer 2008)


JOIN tem uma precedência maior que uma VÍRGULA, então sua segunda instrução é interpretada como (observe os parênteses que adicionei):
select sched.id, max(txn.dttm), acc.id
from PaymentSchedulePeriod sched 
,(PaymentSchedulePayment pay
right outer join AccountTransaction txn on pay.accountTransactionFk=txn.id 
right outer join Account acc on txn.accountFk=acc.id)
where sched.accountFk=acc.id 
group by sched.id, acc.id

Veja também:Regras de precedência JOIN por SQL-99