我有一个数据库,存储街机游戏的名称和它们组成的ROM芯片。我有两个MySQL表:mame_games
和mame_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
我想选择gameA。
知道怎么做吗?
答案 0 :(得分:0)
尝试以下方法:
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;