gpt4 book ai didi

mysql - 替换 select 语句中的值

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

所以,抱歉,因为我觉得这是一个已经被问到的问题,但我无法正确地表达它以找到符合我需求的结果。

我有这 4 个表:

参加者:

id     |     name
----------------------
1 | Name1
2 | Name2
3 | Name3
4 | Name4
5 | Name5
6 | Name6

事件:

id      |     participant1   |  participant2
----------------------------------------------
7 | 2 | 1
8 | 2 | 1
9 | 3 | 1
10 | 4 | 3
11 | 5 | 4
12 | 6 | 5

事件组:

id     |     groupId      |  eventId
----------------------------------------------
1 | 1 | 7
2 | 1 | 8
3 | 1 | 9
4 | 2 | 10
5 | 2 | 11
6 | 2 | 12

群组:

id     |     name
----------------------
1 | GroupName1
2 | GroupName2

所以,到目前为止我有这个:

Select * from EventGroups eg 
join Groups g on eg.groupId = g.id
join Events e on e.id = eg.eventId;

这就是结果:

id |  groupId  |  eventId |   name        |  participant1   |  participant2
-----------------------------------------------------------------------------
1 | 1 | 7 | GroupName1 | 2 | 1
2 | 1 | 8 | GroupName1 | 2 | 1
3 | 1 | 9 | GroupName1 | 3 | 1
4 | 2 | 10 | GroupName2 | 4 | 3
5 | 2 | 11 | GroupName2 | 5 | 4
6 | 2 | 12 | GroupName2 | 6 | 5

所需的输出是:

id |  groupId  |  eventId |   name        |  participant1   |  participant2
-----------------------------------------------------------------------------
1 | 1 | 7 | GroupName1 | Name2 | Name1
2 | 1 | 8 | GroupName1 | Name2 | Name1
3 | 1 | 9 | GroupName1 | Name3 | Name1
4 | 2 | 10 | GroupName2 | Name4 | Name3
5 | 2 | 11 | GroupName2 | Name5 | Name4
6 | 2 | 12 | GroupName2 | Name6 | Name5

我的意思是,将每列中的参与者 ID 替换为匹配表中相应的名称。

语言是Mysql。

可能吗?

提前致谢!

最佳答案

只需加入参与者表两次,每个参与者一次,然后使用参与者1和参与者2作为匹配参与者姓名的别名。

Select eg.id, eg.groupId, eg.EventId, g.name, p1.name as participant1, p2.name as participant2  from EventGroups eg 
join Groups g on eg.groupId = g.id
join Events e on e.id = eg.eventId
join Participants p1 on p1.id = e.participant1
join Participants p2 on p2.id = e.participant2;

关于mysql - 替换 select 语句中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52013029/

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