MySQL多表查询学习笔记

一、按连接方法分:

1)内连接(只留下符合连接条件的)

        SELECT * from 表名1,表名2 WHERE 表名1.列名=表名2.列名

        SELECT * from 表名1 INNER JOIN表名2 ON 表名1.列名=表名2.列名

        SELECT * from 表名1 别名1,表名2 别名2 WHERE 别名1.列名=别名2.列名

        SELECT * from 表名1 别名1 INNER JOIN表名2 别名2 ON 别名1.列名=别名2.列名

        注:取了别名,后面只能用别名

2)外连接(可以留下部分不符合条件的数据)

        左外连接接:左边的表(主表、驱动表,在“表名1”位置)全部显示,与右边表没匹配上的用null补全。

        SELECT * from 表名1 LEFT JOIN 表名2 ON 表名1.列名=表名2.列名

        SELECT * from 表名1 LEFT OUTER JOIN 表名2 ON 表名1.列名=表名2.列名

        右外连接接:右边的表(主表、驱动表,在“表名2”位置)全部显示,与左边表没匹配上的用null补全。

        SELECT * from 表名1 RIGHT JOIN 表名2 ON 表名1.列名=表名2.列名

        SELECT * from 表名1 RIGHT OUTER JOIN 表名2 ON 表名1.列名=表名2.列名

3)全外连接,但目前MySQL不支持。

二、自连接(自己和自己连)

       SELECT * from 表名1 别名1,表名1 别名2 WHERE 别名1.列名=别名2.列名

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值