这是我的SQL Server表
ID Date Value ___ ____ _____ 3241 9/17/12 5 3241 9/16/12 100 3241 9/15/12 20 4355 9/16/12 12 4355 9/15/12 132 4355 9/14/12 4 1234 9/16/12 45 2236 9/15/12 128 2236 9/14/12 323 2002 9/17/12 45
这似乎很容易做到,但我不知道为什么会被卡住。我只想为每个id选择max(date)和该max(date)处的值。我想忽略相对于每个ID而言不是max(date)的所有其他日期。
这是我希望表格看起来像的样子:
ID Date Value ___ ____ _____ 3241 9/17/12 5 4355 9/16/12 12 1234 9/16/12 45 2236 9/15/12 128 2002 9/17/12 45
我尝试通过使用max(date)进行分组,但没有进行任何分组。我不确定自己在做什么错。在此先感谢您的帮助!
您可以使用以下内容:
select t1.id, t2.mxdate, t1.value from yourtable t1 inner join ( select max(date) mxdate, id from yourtable group by id ) t2 on t1.id = t2.id and t1.date = t2.mxdate
观看演示