gpt4 book ai didi

sql - MySQL查询涉及交叉连接、唯一性等

转载 作者:行者123 更新时间:2023-11-29 06:22:35 25 4
gpt4 key购买 nike

值得庆幸的是,我以前不需要处理特别复杂的 SQL 查询。这是我的目标。

我有表hams,我想将其与表eggs交叉连接 - 也就是说,将所有火腿-鸡蛋组合...获取到一个范围。

eggs 表还有一个属性 how_cooked,其定义为 ENUM('over-easy','scrambled','poached')我想要一个结果集,列出火腿和鸡蛋 cooking 方法的所有可能组合,以及以这种方式 cooking 的鸡蛋样本。(我不关心具体是哪个鸡蛋。)

因此,如果 3 个 id 为 1、2 和 3 的火腿以及每种 cooking 方法的 3 个鸡蛋,我的结果集应如下所示:

+---------+-----------------+---------+
| hams.id | eggs.how_cooked | eggs.id |
+---------+-----------------+---------+
| 1 | over-easy | 1 |
| 1 | scrambled | 4 |
| 1 | poached | 7 |
| 2 | over-easy | 1 |
| 2 | scrambled | 4 |
| 2 | poached | 7 |
| 3 | over-easy | 1 |
| 3 | scrambled | 4 |
| 3 | poached | 7 |
+---------+-----------------+---------+

我确信我可以将一些解决方案与大量的子查询组合在一起,但是 MySQL 有没有优雅的方法来做到这一点?

最佳答案

通过认真思考和谷歌搜索,我可能找到了一个很好的解决方案:

SELECT * FROM hams, eggs GROUP BY hams.id, eggs.how_cooked

这似乎有效。真的那么容易吗?

关于sql - MySQL查询涉及交叉连接、唯一性等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2181273/

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