当前位置:Gxlcms > 数据库问题 > MySQL多表连接查询

MySQL多表连接查询

时间:2021-07-01 10:21:17 帮助过:17人阅读

    交叉连接:--没有任何条件,只需要将多张表的所有数据排列显示出来

select * from class,stu;

 

    内连接:建立在两张或多张表之间,存在数据的关联关系

inner join

 

    select * from 表A INNER JOIN 表B on 连接条件;

    等价于

    select * from 表A,表B where 表A.字段=表B.字段;

 

两张表:

select * from class INNER JOIN stu ON class.cid=stu.cid;

 

select * from class,stu, 表C WHERE class.cid=stu.cid AND 表A.字段=表C.字段;

 

三张表:

select * from student s,course c,score sc WHERE s.sid=sc.sid AND c.cid=sc.cid;

 

外连接:

左外连接 LEFT JOIN / LEFT OUTER JOIN

右外连接 RIGHT JOIN / RIGHT OUTER JOIN

 

外连接:左表或右表作为主表的情况下,主表的全部内容都会显示,而另一张表没有对应的数据则会补null

 

select * from class c LEFT JOIN stu s ON c.cid=s.cid;

select * from class c RIGHT JOIN stu s ON c.cid=s.cid;

MySQL多表连接查询

标签:mysql数据库

人气教程排行