我需要有关高级 SQL 查询 (MSSQL 2000) 的帮助。
我有一个名为 Result 的表格,其中列出了田径 100 米和 200 米的比赛时间。一个跑步者可以有多个比赛时间,但我只想展示每个跑步者在每场比赛中的最佳时间。
结果表包含五列,Result_id、sports_id、result_time、result_date、event_code。因此,当我列出值时,sports_id 必须是唯一的,并且 result_time 必须是最快(最低)的值。此外,我希望能够选择 event_code 应该是“= 1”还是“= 2”,因为 100 和 200 米的结果时间混合在同一个表中。
几天前我问了一个类似的问题,但没有 event_code 条件。
这是我们想出的答案。
select r.*
from result r
inner join (
select athelete_id, min(result_time) as FastestTime
from result
group by athelete_id
) rm on r.athelete_id = rm.athelete_id and r.result_time = rm.FastestTime
有什么想法可以将 event_code 条件添加到此代码段中吗?