gpt4 book ai didi

mysql - 在第二个基于多列连接表

转载 作者:可可西里 更新时间:2023-11-01 07:49:31 25 4
gpt4 key购买 nike

我有两个表 Place 和 Post 我需要生成输出

place
--------------
std_id sch_id
1 1
2 2
3 1
4 3
5 4
6 2
7 5
8 3
9 5
10 4

Post
------------
sch1_id sch2_id sch3_id sup_id
1 2 3 1
3 2 4 2

我需要生成以下输出

sup_id  sch_id  std_id
1 1 1
1 1 3
1 2 2
1 2 6
1 3 4
1 3 8
2 3 4
2 3 8
2 2 2
2 2 6
2 4 5
2 4 10

我试过了

 SELECT pl.std_id,po.sup_id FROM `place` pl,`post` po WHERE pl.sch_id =
po.sch1_id group by po.sup_id

得到这个

| std_id | sup_id |
|--------|--------|
| 1 | 1 |
| 4 | 2 |

编辑

SQLFiddle

最佳答案

只需使用 IN() :

SELECT pl.std_id,pl.sch_id,po.sup_id
FROM `place` pl
INNER JOIN `post` po
ON(pl.sch_id IN(po.sch1_id,po.sch2_id,po.sch3_id))

虽然非常推荐,但无需规范化您的数据!!您应该重新考虑表结构。

关于mysql - 在第二个基于多列连接表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37937479/

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