gpt4 book ai didi

mysql - 如何通过数据透视表选择一行

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

我有一个数据库,存储街机游戏的名称及其组成的 ROM 芯片。我有两个 MySQL 表:mame_gamesmame_roms 布局如下:

mame_games
------------
id | name

mame_roms
------------
id | crc

和数据透视表(因为一个 ROM 可以属于多个游戏,并且一个游戏有多个 ROM):

mame_games_mame_roms
--------------------
id | mame_games_id | mame_roms_id

我想要做的是选择由一组特定 ROM 组成的游戏。例如,假设我有三个 ROM,CRC 值为“12345”、“54321”和“abcde”。我想从 mame_games 中选择链接到这三个 ROM 的游戏。因此,如果我有以下数据:

mame_games
------------
id | name
1 | gameA
2 | gameB

mame_roms
------------
id | crc
1 | 12345
2 | 09876
3 | 54321
4 | abcde

mame_games_mame_roms
--------------------
id | mame_games_id | mame_roms_id
1 | 1 | 1
2 | 2 | 2
3 | 1 | 3
4 | 1 | 4

我想选择游戏A。

知道如何做到这一点吗?

最佳答案

尝试以下操作:

select
distinct g.name
from
mame_game g,
mame_roms r,
mame_games_mame_roms p
where
r.crc in ( '12345', '54321’,'abcde’)
and r.id = p.mame_roms_id
and p.mame_game_id = g.id;

关于mysql - 如何通过数据透视表选择一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33640948/

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