0

我正在使用此代码获取团队的数据

SELECT `in_standings`.*, `in_teams`.`name` as team_name, `in_teams`.`logo` as team_logo, `in_teams`.`shortcode` as team_shortcode, lr.*, in_teams.id as team_id
        FROM `in_standings` daa
        LEFT JOIN `in_teams` ON `in_standings`.`team_id`= `in_teams`.`id`
        left join
        (SELECT team1_id,daa.team_id as teamID,
               MAX(CASE WHEN rn = 1 THEN winning_team END) AS result1, 
               MAX(CASE WHEN rn = 2 THEN winning_team END) AS result2, 
               MAX(CASE WHEN rn = 3 THEN winning_team END) AS result3, 
               MAX(CASE WHEN rn = 4 THEN winning_team END) AS result4, 
               MAX(CASE WHEN rn = 5 THEN winning_team END) AS result5 
        FROM (
          SELECT team1_id, winning_team,
                 @row_number := @row_number + 1 AS rn
          FROM in_games 
          CROSS JOIN (SELECT @row_number := 0) AS vars
          WHERE team1_id = teamID    <!-- here is problem -->
         ) AS t) as lr on lr.team1_id=in_standings.team_id
        WHERE `in_standings`.`division_id` =  '21'
        ORDER BY `in_standings`.`points` DESC

我评论的子查询没有得到我想在同一行中设置最后 5 个匹配结果的 team_id。谁能解决问题出在哪里?

4

0 回答 0