スキーマの背後にある概念を理解していれば、stage_id
だと思います。 team_pool
の列である必要があります pool
ではなく 。ステージはプールの属性ではなく、チームをプールにマッピングする際の要素ですよね?
とにかく、これが私がOracleでクエリを書く方法です。この正確な構文がMySQLに適しているかどうかはわかりません。おそらく、stage_id
のリテラル値をパラメーター化する必要があります。 。
SELECT t.name, p.name
FROM (SELECT team.name, pool_id
FROM team LEFT JOIN team_pool
ON team_pool.team_id = team.team_id ) t
LEFT JOIN (SELECT pool_id, name FROM pool WHERE stage_id = 2) p
ON p.pool_id = t.pool_id