按日期时间的SQL查询组

时间:2017-05-04 12:05:50

标签: sql sql-server group-by

我有一个数据库表,我在一分钟内存储数据3到9次。我使用 ID XYZ 值和 CreateDateTime

存储数据

现在,我想编写一个脚本,其中返回值在每分钟中显示XYZ的最大值。

请帮我写这个剧本。

1 个答案:

答案 0 :(得分:1)

您可以使用row_number()

执行此操作
select t.*
from (select t.*,
             row_number() over (partition by dateadd(minute, datediff(minute, 0, createdatetime), 0)
                                order by xyz desc
                               ) as seqnum
      from t
     ) t;

注意:这会返回每分钟中具有最大值的行。