gpt4 book ai didi

mysql - SQL笛卡尔积/交叉连接方向

转载 作者:太空宇宙 更新时间:2023-11-03 11:57:20 25 4
gpt4 key购买 nike

我有两个关于这个主题的简单表格:

   abc       numbers
+--------+ +--------+
| letter | | number |
+--------+ +--------+
| a | | 1 |
| b | | 2 |
+--------+ | 3 |
+--------+

查询:

SELECT letter, number
FROM abc
CROSS JOIN numbers;

结果:

+--------+--------+
| letter | number |
+--------+--------+
| a | 1 |
| b | 1 |
| a | 2 |
| b | 2 |
| a | 3 |
| b | 3 |
+--------+--------+

预期结果:

+--------+--------+
| letter | number |
+--------+--------+
| a | 1 |
| a | 2 |
| a | 3 |
| b | 1 |
| b | 2 |
| b | 3 |
+--------+--------+

为什么没有像我预期的那样出来?

根据我在此 article 中阅读的有关笛卡尔积的内容它应该像我预期的那样出来。

enter image description here

任何人都可以逐步解释我得到的结果是如何被 MySql 处理的吗?

最佳答案

结果集是一样的。 SQL 结果集没有排序,除非您指定 order by。两者都包含相同的行,因此它们是相同的。

如果您期望查询按特定顺序返回行,而您没有使用order by,那么您的期望就完全错误了。

关于mysql - SQL笛卡尔积/交叉连接方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31641060/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com