2

リーグ、リーグ_チーム、チームの 3 つのテーブルに参加しようとしています。

クエリを使用:

$teams = $database->select(
    'teams',
    [
    '[>]leagues_teams' =>
        [
            'fifa_id' => 'fifa_team_id'
        ],
        '[>]leagues' =>
        [
            'fifa_league_id' => 'fifa_id'
        ]
    ], [
        'teams.fifa_id',
        'teams.name',
        'teams.rating'
    ], [
        'ORDER' => 'teams.name ASC'
    ]
);

次のクエリになります。

SELECT "teams"."fifa_id","teams"."name","teams"."rating"
FROM "teams"
LEFT JOIN "leagues_teams" ON "teams"."fifa_id" = "leagues_teams"."fifa_team_id"
LEFT JOIN "leagues" ON "teams"."fifa_league_id" = "leagues"."fifa_id"
ORDER BY "teams"."name" ASC

2 番目のLEFT JOINを追加するときは、teams.fifa_league_idではなく、 Leagues_teams.fifa_league_id=leagues.fifa_id で参加する必要があります。

この結合についてどうすればよいですか?

4

1 に答える 1