表连接
利用连接条件将多个表关联起来,这就是表连接(join),通过表连接可以获取多个表之间的数据

表连接语法:
SELECT 表名1.列名, 表名2.列名 FROM 表1, 表2 WHERE 条件
表连接的几种方式:
内连接: join 或者 inner join
立即学习“PHP免费学习笔记(深入)”;
自连接: 同一张表内的连接
外连接:
左外连接, left join
右外连接, right join
全外连接, full join
数据 (table1):

数据 (table2):

内连接
内连接是从结果表中删除与其他被连接表中没有匹配的所有行. (交集)
格式:
SELECT A.c1, B.c2 FROM A JOIN B ON A.c3 = B.c3
例子:
输出结果:
数据库链接成功
SQL 语句执行成功!
Array
(
[name] => 杨富贵
[age] => 18
[class] => 数学课
)
Array
(
[name] => 杨美丽
[age] => 19
[class] => 语文课
)
Array
(
[name] => 杨建国
[age] => 20
[class] => 英语课
)
左连接
包含做表的全部行 (不管右表是否存在与之匹配的行), 以及右表中全部匹配的行.
格式:
SELECT A.c1, B.c2 FROM A LEFT JOIN B ON A.c3 = B.c3
例子:
输出结果:
数据库链接成功
SQL 语句执行成功!
Array
(
[name] => 杨富贵
[age] => 18
[class] => 数学课
)
Array
(
[name] => 杨美丽
[age] => 19
[class] => 语文课
)
Array
(
[name] => 杨建国
[age] => 20
[class] => 英语课
)
Array
(
[name] => 杨铁柱
[age] => 21
[class] =>
)
右连接
包含右表的全部行 (不管左表是否存在与之匹配的行), 以及左表中全部匹配的行.
格式:
SELECT A.c1, B.c2 FROM A RIGHT JOIN B ON A.c3 = B.c3
例子:
输出结果:
数据库链接成功
SQL 语句执行成功!
Array
(
[name] => 杨富贵
[age] => 18
[class] => 数学课
)
Array
(
[name] => 杨美丽
[age] => 19
[class] => 语文课
)
Array
(
[name] => 杨建国
[age] => 20
[class] => 英语课
)
Array
(
[name] =>
[age] =>
[class] => 历史课
)
全连接
包含左右两个表的全部行 (不管在另一个表中是否存在与之匹配的行).
格式:
SELECT A.c1, B.c2 FROM A LEFT JOIN B ON A.c3 = B.c3
UNION
SELECT A.c1, B.c2 FROM A RIGHT JOIN B ON A.c3 = B.c3
例子:
输出结果:
数据库链接成功
SQL 语句执行成功!
Array
(
[name] => 杨富贵
[age] => 18
[class] => 数学课
)
Array
(
[name] => 杨美丽
[age] => 19
[class] => 语文课
)
Array
(
[name] => 杨建国
[age] => 20
[class] => 英语课
)
Array
(
[name] => 杨铁柱
[age] => 21
[class] =>
)
Array
(
[name] =>
[age] =>
[class] => 历史课
)










