我需要在选择产品时获取给定数据集的最新记录。每条记录的价格对不同的时间间隔有效。我需要获取最新的每条记录的价格例如:
product name price from_date to_date
snickers original 5.99 1/1/2017 2/2/2017
snickers original 4.67 3/3/2017 4/4/2017
skittles rainbow 2.99 7/7/2016 8/8/2017
skittles rainbow 8.99 9/9/2016 10/10/2017
并且所需的结果应该是没有向用户显示日期的名称和价格。日期应该像这样隐藏:
snickers original 4.67
skittles rainbow 8.99
答案 0 :(得分:1)
您可以使用WITH TIES
条款与Row_Number()
一致,并假设没有FUTURE定价。
Select Top 1 with Ties [product name],Price
from YourTable
Order By Row_Number() over (Partition By [product name] Order By To_Date Desc)
<强>返回强>
product name price
skittles rainbow 8.99
snickers original 4.67