我有一张包含航班价格详情的表格,请参阅下面的简化字段:
FlightInfoId
AirportFrom
AirportTo
Price
DateTimeAdded
AirportFrom和AirportTo有大约300种可能的组合,代表300种不同的航线,尽管数据库中有数百万条记录,因此每条航线都有很多条目。我想要做的是为300条路线中的每条路线提取最新条目。可以使用时间戳'DateTimeAdded'推断出最新的条目。我需要一个返回300行的查询显示:
AirportFrom, AirportTo, DateTimeAdded
DateTimeAdded是AirportFrom和AirportTo
指定的路线的最新行数我希望他很清楚,并提前感谢!
答案 0 :(得分:1)
这种方法或多或少与数据库无关。
select AirportFrom, AirportTo, Price
from yourtable join
(select AirportFrom af, AirportTo at, max(DateTimeAdded) LastUpdate
from yourtable
group by AirportFrom, AirportTo) temp on AirportFrom = af
and AirportTo = at
and DateTimeAdded = LastUpdate