【发布时间】:2018-12-13 16:32:51
【问题描述】:
我记得大学时的一条经验法则,如果您在 SQL 查询中放置左连接,那么该查询中的所有后续连接也必须是左连接而不是内连接,否则您会得到意想不到的结果.但我不记得这些结果是什么,所以我想知道我是否记错了什么。任何人都可以支持我或反驳它吗?谢谢! :)
例如:
select * from customer
left join ledger on customer.id= ledger.customerid
inner join order on ledger.orderid = order.id -- this inner join might be bad mojo
【问题讨论】:
-
您最好告诉我们您使用的是什么 RDBMS,因为它们在允许和不允许的方面有所不同。 “意外结果”对我来说似乎很可疑,但它很可能再次取决于(而且几乎肯定是)数据库。
-
我主要使用 SQL Server。
-
"...否则您会得到意想不到的结果...":除非您知道自己在做什么,并且会给出结果做期待。
标签: sql