图解SQL联结:交叉联结

作者: 猴子数据分析 | 来源:发表于2019-06-19 11:49 被阅读11次

1.什么是联结?

表和表之间是通过列产生关系的,这在SQL里叫做联结。联结(join):是通过表和表之间的关系将两个表合并在一起的操作。

常用的联结有4种类型,分别是交叉联结,内联结,左联结,全联结,

今天我们来学习:交叉联结

2.什么是交叉联结?

交叉联结,也叫笛卡尔积,它的英文单词叫crossjoin。交叉联结是将表中的每一行都与另一个表中的每一行合并在一起。

比如下面图片中:

表1有3行,用1、2、3分别表示表中的3行数据

表2有2行数据,用A、B分别表示表中的2行数据。

表1和表2进行交叉联结的过程是这样的:

表1的第1行分别于表2中的2行合并在一起,这样就产生了2行数据

表1的第2行分别于表2中的2行合并在一起,这样就产生了2行数据

表1的第3行分别于表中的2行合并在一起,这样就产生了2行数据

交叉联结结果的行数是两张表中行数的乘积。表1有3行,表2有2行,所以结果就有3*2=6行

3.生活中的交叉联结案例

交叉联结其实在我们生活中就有,扑克牌就是一个交叉联结。

13张牌包括从1-10(1通常表示为A)以及J、Q、K

4种花色:黑桃、红桃、方块、梅花

图片来源:By Trainler-Own work,CC BY3.0

https://commons.wikimedia.org/w/index.php?curid=7104281

13张牌中的每一张与花色中的每一种颜色结合,总共产生了52张牌,再加上大小王是54张牌。

4.交叉联结有什么用?

交叉联结其实在实际业务中用的比较少,是因为:

1)结果行数太多,需要花费大量的运算实际和高性能设备的支持

2) 结果没有实际价值

那为什么还要在这里介绍呢?

这是因为交叉联结是其他联结运算的基础,下次我们学习的其他联结是在交叉联结的基础上加了过滤条件。

推荐:如何找到好工作?

相关文章

  • 图解SQL联结:交叉联结

    1.什么是联结? 表和表之间是通过列产生关系的,这在SQL里叫做联结。联结(join):是通过表和表之间的关系将两...

  • 图解SQL联结:内联结

    ​ 复仇者联盟的成员通过美国队长 联结 合并到了一起,从此战斗力爆表。 今天我们用下面的表来学习内联结。其中, 学...

  • 图解SQL联结:右联结

    ​ 今天我们用下面的表来学习右联结。其中, 学生表(student):用来记录学生的基本信息 成绩表(score)...

  • 图解SQL联结:左联结

    ​ 今天我们用下面的表来学习左联结。其中, 学生表(student):用来记录学生的基本信息 成绩表(score)...

  • 图解SQL联结:全联结

    今天我们用下面的表来学习全联结。其中, 学生表(student):用来记录学生的基本信息 成绩表(score):用...

  • 《SQL必知必会》笔记7-高级联结(as、self-join、o

    1 创建高级联结(别名、自联结、外联结) 1.1 使用表别名AS 使用别名的两个主要理由: 缩短SQL语句。 允许...

  • 《mysql必知必会》读书实战笔记15-联结查询

    第15章 联结表 15.1联结 联结查询(join),是SQL最强大的功能之一。 15.1.1关系表 关系数据库,...

  • MySQL白菜教程(Level 6)

    多表联结 1.联结SQL 最强大的功能之一就是能在数据检索查询的执行中联结表 什么叫联结例子如下: 在大学每一个新...

  • 【MySQL必知必会】第15章:

    15.1 联结 SQL最强大的功能之一就是能在数据检索查询的执行中联结(join)表,但在掌握联结之前需要了...

  • 高性能 SQL 计划 Day 3

    今天继续来学 SQL,主要是《MySQL必知必会》15-18章的内容。 Ch 15.联结表 1.联结 SQL 最强...

网友评论

    本文标题:图解SQL联结:交叉联结

    本文链接:https://www.haomeiwen.com/subject/qqbhqctx.html