数据库多表查询

https://www.cnblogs.com/assasion/p/7768931.html

  • 内连接查询

  • inner join(等值连接) 只返回两个表中联结字段相等的行

  • 相当于取交集

– 隐式内链接
SELECT * FROM product p,category c WHERE p.cno=c.cid;

– 显示内链接
SELECT * FROM product p INNER JOIN category c ON p.cno=c.cid;

– 区别:
隐式内链接: 在查询出结果的基础上去做的WHERE条件过滤
显示内链接: 带着条件去查询结果, 执行效率要高

  • 左外连接( left join 是 left outer join 的简称 )
    左外连接,会将左表中的所有数据都查询出来, 和右表满足条件的数据,如果右表中没有对应的数据,用NULL代替
    SELECT * FROM product p LEFT JOIN category c ON p.cno=c.cid;

  • 右外连接: 会将右表所有数据都查询出来, 如果左表没有对应数据的话, 用NULL代替

    SELECT * FROM product p RIGHT OUTER JOIN category c ON p.cno=c.cid;

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/duanbaoke/article/details/87872239