MySQL与PHP中的表连接怎么用

网友投稿 842 2023-07-05

MySQL与PHP中的表连接怎么用

MySQL与PHP中的表连接怎么用

表连接

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

表连接语法:

SELECT 表名1.列名, 表名2.列名 FROM 表1, 表2 WHERE 条件

表连接的几种方式:

内连接: join 或者 inner join

自连接: 同一张表内的连接

外连接:

左外连接, 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.c3UNIONSELECT 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] => 历史课)

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Mysql锁机制中行锁、表锁、死锁如何实现
下一篇:php连接mysql乱码问题如何解决
相关文章