SQL级联加入

时间:2014-06-26 15:38:41

标签: sql join

我将以下联接作为视图的一部分:

from studies
inner join orders on orders.orderId = studies.orderId
    left outer join referrers on referrers.referrerId = orders.referrerId
        left outer join professionalDegrees referrerDegree on referrerDegree.professionalDegreeId = referrers.professionalDegreeId

referrers.professionalDegreeId列为NOT NULL。在仅限于引用范围的查询中,对professionalDegrees的JOIN是INNER。

在上面的视图中,如果我在professionalDegrees上进行INNER JOIN,则不会返回orders.referrerId为NULL的行。当我在professionalDegrees上LEFT JOIN时,根据需要使用NULL referrerId返回行。

在这种情况下,INNER与LEFT对性能有关吗?有没有更好的方法来编写这个JOIN?

0 个答案:

没有答案