中关村在线

软件

MySQL连接查询详解

MySQL连接查询用于关联多表数据。

1、 核心概念

2、 将两个表的各行进行横向配对连接,生成所有可能的组合结果行。

3、 假设:

4、 表A为n1行m1列。

5、 表B含n2行m2列

6、 表A与表B连接后,将产生如下结果:

7、 共n1乘n2行

8、 两列相加

9、 连接后结果如下所示:

10、 连接查询的基本语法结构

11、 从表1通过指定连接方式与表2基于连接条件进行关联查询操作。

12、 交叉联接

13、 两个表根据连接条件进行关联后,所得结果包含所有未加筛选的组合数据,即不应用任何限制条件时的完整集合。

14、 交叉连接指无条件的全连接,即两表所有行相互组合,又称笛卡尔积。

15、 交叉连接实际应用较少,因其生成的结果可能导致每行数据失去原有意义。

16、 形式:

17、 表1与表2进行交叉连接操作。

18、 或:

19、 从表1和表2中提取数据。

20、 内连接

21、 形式:

22、 从表1与表2进行内连接,条件为表1的字段1等于表2的字段2。

23、 含义:

24、 在交叉连接结果中,筛选出符合指定连接条件的行数据。

25、 交叉连接常产生冗余信息,例如:

26、 查看内连接结果:

27、 结果如下:

28、 可见:

29、 内连接是从交叉连接的结果中筛选出符合关联条件的有效数据行。

30、 交叉连接中的数据部分有效,部分为无效或错误信息。

31、 但需留意

32、 这种连接条件需依据表间实际关联设定,通常指两个表中存在主外键关系的字段值必须相等,不可随意指定。

33、 连接查询与先前学习的外键关系在逻辑上具有一致性,二者紧密关联,体现了数据表间的内在联系。

34、 进行内连接操作时,并不要求两个表必须存在外键约束。只要在实际业务中认为它们具有数据关联关系,即可在查询时通过内连接来建立这种联系,实现数据的匹配与整合。

展开全文
人赞过该文
内容纠错

相关电商优惠

评论

更多评论
还没有人评论~ 快来抢沙发吧~

读过此文的还读过

点击加载更多

内容相关产品

说点什么吧~ 0

发评论,赚金豆

收藏 0 分享
首页查报价问答论坛下载手机笔记本游戏硬件数码影音家用电器办公打印 更多

更多频道

频道导航
辅助工具