MySQL连接查询

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、内连接查询
    • 1.内连接查询概要
    • 2.交叉查询
    • 3.自然链接
  • 二、多表连接查询
    • 1.多表连接查询方法
    • 2.简单多表链接查询
  • 三.外连接查询
    • 1.外连接查询的概念
    • 2.左外连接(left join)
    • 3.右外连接(right join)


前言

‘【】’有这个的可以省略

提示:以下是本篇文章正文内容,下面案例可供参考

一、内连接查询

1.内连接查询概要

内连接是应用程序中非常常见的操作,它一般都是默认的链接类型。内连接分为三种:交叉连接,相等链接,自然连接。
内连接的语法

select fieldlist from table1【innerjoin table2 on table1.column1=table2.column2【where condition】

2.交叉查询

交叉连接,又称“笛卡尔链接”或“叉乘”,他是所有类型的内连接的基础。

select *from 表名1 CROSS JOIN 表名2 

等价于

select*from 表名1,表名2

3.自然链接

自然链接是一种特殊的内连接,他要求相连接的两张表的链接依据列必须是相同的字段(字段名相同,字段属性相同)。

select fieldlist from table1 natural join table2
【where condition】

二、多表连接查询

1.多表连接查询方法

三张表查询语法

select fieldlist from table1 join table2 on table1.column1=table2.column2_1 join table3 on table2.column_2=table3.column3
【where condition】

说明
1.table2 与table1 和table3 两两相连。
2.三表以上连接查询的方法与三表连接查询的方法一样,都是通过两两相连的方式实现。

2.简单多表链接查询

如果在FROM子句中,直接列出所有要链接的表,然后在where子句中指定链接的条件。它与内链接功能相同。
两表查询语法

select fieldlist from table1,table2
where table1.column1=table2.column2【and 其他条件】

三表查询语法

select fieldlist from table1,,table2,table3 
where table1.column1=table2.column2_1 and table2.column2_2=table.column3【and 其他条件】

三.外连接查询

1.外连接查询的概念

1.可以使不满足连接条件的记录出现在查询结果。
2.根据不同的外连接形式,外连接所生成的结果集中不仅包含符合条件的数据记录,还包含左表或右表或者左右表中的所有的数据记录。
外连接语法

select 字段名称 from 表名1 left|right|fullouterjoin 表名2 on 表名1.字段1=表名2.字段名2

2.左外连接(left join)

左外连接的结果集包括左表的所有记录和右表中满足连接条件的记录,结果集中那些不符合连接条件的来源于右表的列值为null。

3.右外连接(right join)

右外连接是左外连接的反向连接。右外连接的结果集包括右表的所有记录和左表中满足连接条件的记录,结果集中那些不符合连接条件的来源于左表的列值为null。

你可能感兴趣的:(mysql)