MySQL - выбор записей на основе максимального вторичного идентификатора - PullRequest
0 голосов
/ 02 октября 2009

Вот часть моего стола:

id   team_id  log_id
1         12       1
2         12       1
3         12       1
4         12       1
5          1       2
6          1       2
7          1       3
8          1       3

Какой запрос выдаст этот вывод (поэтому возвращаются только записи с самыми высокими значениями log_id, которые соответствуют team_id)?

id   team_id  log_id
1         12       1
2         12       1
3         12       1
4         12       1
7          1       3
8          1       3

Ответы [ 2 ]

2 голосов
/ 02 октября 2009
SELECT *
FROM mytable t
WHERE log_id = (SELECT MAX(log_id) FROM mytable WHERE team_id = t.team_id)
1 голос
/ 02 октября 2009
SELECT id, team_id, log_id
  FROM table1 t2
  JOIN (SELECT team_id, MAX(log_id) max_log_id
          FROM table1
      GROUP BY team_id) t2 ON t1.team_id = t2.team_id 
                          AND t1.log_id = t2.max_log_id
...