sql内连接查询 在sql中使用左关联left join和where两种写法有什么不同吗?
浏览量:2671
时间:2021-03-14 01:05:55
作者:admin
在sql中使用左关联left join和where两种写法有什么不同吗?
当我还是初学者的时候,我喜欢用select*from T1,T2的方法,其中T1.f1=T2.f2来关联两个表。如果此方法可以在SQLServer中自动更改为内部联接,则其他数据库(如Oracle)将不会。
现在,我更喜欢选择*从T1左连接T1上的T2。F1=T2。F2层。
两者之间的区别:
1。对于查询结果,left join可能返回更多结果。
左连接,即建立连接,就是以左表为中心,返回左表中所有符合条件的记录和右表中连接字段相同的记录——当右表中没有相应的连接记录时,返回null。
使用where表示两个表之间的关联关系相当于完全联接。只能获取与这两个表关联的记录。
2. 使用左连接使结构更清晰。
特别是在实际应用场景中,通常会关联10多个表,种子查询和复杂函数会层层重叠。如果只用where来表示表的关联,where后面的关联会混入各种查询条件,导致可维护性差,也可能影响查询效率。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。