Jika saya memahami konsep di balik skema Anda, maka saya akan berpikir stage_id
harus berupa kolom di team_pool
daripada pool
. Panggung bukanlah atribut dari pool, itu adalah faktor dalam pemetaan tim ke pool, kan?
Terlepas dari itu, ini adalah bagaimana saya akan menulis kueri Anda di Oracle. Saya tidak yakin apakah sintaks yang tepat ini tepat untuk MySQL. Agaknya Anda ingin membuat parameter nilai literal untuk 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