我有以下要求:
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
这是您的查询:
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'
原文地址:https://www.jb51.cc/mssql/75740.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。