我是靠谱客的博主 等待钢笔,最近开发中收集的这篇文章主要介绍sql语句:where和on,join连接,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

数据库在连接多个表,通过select查询返回结果时,都会生成一个临时表,然后再把这个表返回给用户。这里如要进行过滤的,可以用where或者on,他们两者的使用有些不同。

比如,Keys表

Sections表

两个表含有同个字段SectionID

当我们需要从这2个表查找含有相同字段的记录时,使用select * from Keys , Sections on Keys.SectionId=Sections.SectionID,或者使用select * from Keys , Sections where Keys.SectionId=Sections.SectionID,就是直接两个表名,中间以逗号分隔,两种语句的输出结果都是一致。

而如果使用join连接,

left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 
right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录 
inner join(等值连接) 只返回两个表中联结字段相等的行

比如left join左连接,这时如用on后面加判断语句就不起作用,如用where则还会根据判断语句的真假进行返回。

其他的join连接,还有right join右连接是从右边的表中返回所有记录,full join是返回两个表的并集,也是一样的情况,这里不再叙述。只有一个inner join就是等值连接,返回两个表中字段相等的记录,才返回跟where相同的结果。

最后

以上就是等待钢笔为你收集整理的sql语句:where和on,join连接的全部内容,希望文章能够帮你解决sql语句:where和on,join连接所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(75)

评论列表共有 0 条评论

立即
投稿
返回
顶部