sql >> Databáze >  >> RDS >> Sqlserver

Chování křížového spojení (SQLServer 2008)

JOIN má vyšší prioritu než ČÁRKA, takže vaše druhé prohlášení je interpretováno jako (všimněte si závorek, které jsem přidal):

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

Viz také:Pravidla přednosti PŘIPOJENÍ podle SQL-99



  1. Jak vyřešit ORA-29285:chyba zápisu do souboru

  2. Inner Join Nested Inside Update Statement SQL

  3. Chybné znaky při tisku textu z tabulky utf8_unicode_ci Mysql

  4. Před vložením zkontrolujte, zda řádek v databázi existuje