MySQL:有条件地在该父项的两个子项上返回父行,这两个子项是同一个表

时间:2012-05-15 02:14:32

标签: mysql alias

我在MySQL中有以下设置:

  • 表格Gamegameidp1statep2state
  • 表格PlayerGamestateplayergamestateidready

p1statep2statePlayerGamestate的外键。我想要返回标记为p1state的所有游戏p2stateready=1。这可能在一个查询中吗?

我正在使用php来访问,如果这很重要,但我更愿意在一个查询中执行。

1 个答案:

答案 0 :(得分:1)

是:

SELECT GameID
FROM Game G
INNER JOIN PlayerGameState GS1 on G.P1state = GS1.PlayerGamestateID
INNER JOIN PlayerGameState GS2 On G.P2State = GS2.PlayerGameStateID
WHERE GS1.ready=1 and GS2.ready=1