sql >> Database >  >> RDS >> Sqlserver

Cross join-gedrag (SQLServer 2008)

JOIN heeft een hogere prioriteit dan een COMMA, dus je tweede statement wordt geïnterpreteerd als (let op de tussen haakjes die ik heb toegevoegd):

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

Zie ook:JOIN voorrangsregels per SQL-99



  1. Logbestand filteren met COUNT, GROUP BY, ORDER BY MAX

  2. mysql select records groter dan 3 maanden

  3. Moet ik EAV-waarden in een datatypetabel plaatsen?

  4. Selecteer rijen uit een tabel waar een rij in een andere tabel met dezelfde id een bepaalde waarde heeft in een andere kolom