sql多表
sql多表连接
左连接和右连接的区别?
左连接只影响右表,右链接只影响左表。
为什么要有左连接和右连接
因为字段下内容会存在有null
sql多表连接
左连接 (left join)
select * from table1 left join tbale2 on table1.id=table2.id
这条sql语句返回结果 table1表中的数据全部返回 table2表中的数据只返回满足where条件的
右链接 (right join)
select * from table1 right join table2 on table1.id=table2.id
这条sql语句返回结果 table2表中的数据全部返回 table1表中的数据只返回满足where条件的
内连接(insert join)
select * from table1 inner join table2 on table1.id = table2.id
这条sql语句返回结果 显示满足条件的数据 并不以谁为主表
inner join 内连接
SELECT * FROM 表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号
INNER JOIN 连接三个数据表的用法:
SELECT * FROM (表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号) INNER JOIN 表3 ON 表1.字段号=表3.字段号
INNER JOIN 连接四个数据表的用法:
SELECT * FROM ((表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号) INNER JOIN 表3 ON 表1.字段号=表3.字段号) INNER JOIN
表4 ON Member.字段号=表4.字段号
full join(全连接)
全连接查询不仅返回满足调价的所有记录,而且还会返回不满足连接条件的其他行
on是关键字
where是条件
select * from 表1 inner join 表2 on 表1.字段a=表2.字段b
可以减少搜索的时间
select * from 表1 inner join 表2 on 表1.字段a=表2.字段b where 条件