0

これが私のテーブルの一部です:

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

この出力を生成するクエリは何ですか (つまり、team_id に対応する最大の log_id 値を持つレコードのみが返される)?

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

2 に答える 2

2
SELECT *
FROM mytable t
WHERE log_id = (SELECT MAX(log_id) FROM mytable WHERE team_id = t.team_id)
于 2009-10-02T09:19:58.733 に答える
1
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
于 2009-10-02T09:21:38.737 に答える