我应该在多个表上使用sql JOIN关键字进行复杂连接吗?
发布时间:2020-05-23 11:59:45 所属栏目:MsSql 来源:互联网
导读:我有以下要求: select * from tbA A, tbB B, tbC C, tbD Dwhere A.ID=B.ID and B.ID2= C.ID2 and A.ID=D.ID and C.ID3=D.ID3 and B.ID4=D.ID4and A.Foo=Foo 我听到几次这个连接语法被折旧,我应该使用’JOIN’关键字. 如何在这样一个复杂的连
|
我有以下要求: select *
from tbA A,tbB B,tbC C,tbD D
where
A.ID=B.ID and B.ID2= C.ID2 and A.ID=D.ID and C.ID3=D.ID3 and B.ID4=D.ID4
and
A.Foo='Foo'
我听到几次这个连接语法被折旧,我应该使用’JOIN’关键字. 如何在这样一个复杂的连接(多个表连接在不同的表上的多个列)上这样做?你认为这种最佳做法在这里仍然适用吗? 解决方法这是一个味道的问题,但我更喜欢JOIN关键字.它使逻辑更清晰,更符合随之而来的LEFT OUTER JOIN语法.请注意,您也可以使用与JOIN同义的INNER JOIN.语法是 a JOIN b
ON expression relating b to all of the tables before
b可以是一个连接本身.对于内部连接并不重要,但对于外部可以控制连接的顺序,如下所示: select * from
a left join
d join c
on d.i = c.i
on a.k = d.k
这里一个是连接到d和c之间的内部连接. 这是您的查询: select *
from tbA A
join tbB B on A.ID = B.ID
join tbC C on B.ID2 = C.ID2
join tbD D on A.ID = D.ID and C.ID3 = D.ID3 and B.ID4 = D.ID4
where
A.Foo='Foo' (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
