【问题标题】:SQL Query issue 2 tablesSQL 查询问题 2 表
【发布时间】:2026-02-09 22:45:01
【问题描述】:

我有 2 张桌子。我想在查询中使用它们,但结果有问题。

我有一个Games 存储game_idgame_name 的表和另一个带有Releases 信息的表,它也有game_id 作为外键。我已经设置了我的密钥,所以不知道为什么它不起作用。

SELECT Release_date.game_id, game_name
FROM Games,Releases
WHERE release_date BETWEEN '01-JAN-2017' AND '20-JAN-2017'

当我只使用 1 个表时,查询有效,但当我尝试在其中添加 game_name / Games 表时,它只会给我每一个条目。

我正在使用的版本。

SELECT game_id
FROM Releases
WHERE release_date BETWEEN '01-JAN-2017' AND '20-JAN-2017'

【问题讨论】:

  • 你没有在表之间的sql中指定join条件。
  • 我怀疑这是否有效,但我可能弄错了。无论哪种方式,请参阅meta.*.com/questions/333952/…
  • 提示:JOIN/ON.

标签: mysql sql sqlplus


【解决方案1】:

要从 game_id 返回游戏名称,您需要加入 Games 表:

SELECT Games.game_name
     , Releases.release_date
  FROM Releases 
 INNER JOIN Games ON Games.game_id = Releases.game_id
 WHERE Releases.release_date BETWEEN '01-JAN-2017' AND '20-JAN-2017'

【讨论】: