导航

sqlserver 排序函数 ROW_NUMBER

Posted on 2012-12-08 15:51  小强有毒  阅读(225)  评论(0)    收藏  举报

需求:表中有以下字段:id,name,value,date
对name分组,并需要最近时间一次的值。
sql:如下

select * from (
  SELECT*, ROW_NUMBER () 
    OVER (partition BY c.TAG_NAME ORDER BY c.CurrentTime DESC ) x--对nam分组,并对date排序(降序,后面直接取1则为最近一次时间)
  FROM
  dbo.[Real_Time_Data_History] c ) a 
where a.x=1--取1则为最近一次时间