MYSQl 连接查询
Posted zero澪
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MYSQl 连接查询相关的知识,希望对你有一定的参考价值。
查询信息的来源如果来自多张表,就必须对这些表进行连接查询。
连接是把不同表的记录连到一起的最普遍的方法,通过连接查询可将多个表作为一个表进行处理。
连接查询分为内连接和外连接。
交叉连接(Cross Join),又称“笛卡尔连接(Cartesian Join)”或“叉乘(Product)”,它是所有类型的内连接的基础。
内连接基于连接谓词,它将两张表 ( 如A 和 B) 的列组合在一起,产生新的结果表。
内连接查询会将 A 表的每一行和 B 表的每一行进行比较,并找出满足连接谓词的组合。当连接谓词被满足,A 和 B 中匹配的行会按列组合(并排组合)成结果集中的一行。
内连接分 3 种:交叉连接、相等连接和自然连接。
内连接的语法:
SELECT fieldlist FROM table1 [INNER] JOIN table2
ON table1.column1=table2.column2
[where condition]
多表连接查询
使用两表连接查询语法:
SELECT fieldlist FROM table1, table2
WHERE table1.column1=table2.column2 [and 其他条件]
三表连接查询的语法:table2 与 table1 和 table3 两两相连:
SELECT fieldlist FROM table1 JOIN table2 ON table1.column1=table2.column2_1 JOIN table3 on
table2.column2_2=table3.column3 [where condition]
外连接查询 :
SELECT 字段名称 FROM 表名 1 LEFT|RIGHT|FULL [OUTER] JOIN 表名 2
ON 表名 1. 字段名 1= 表名 2. 字段名 2
以上是关于MYSQl 连接查询的主要内容,如果未能解决你的问题,请参考以下文章