对数据按组排序
2015-09-03 13:09
197 查看
数据库环境:SQL SERVER 2005
有数据如图1,字段id是序号,id相同的为一组,createtime为创建时间。要求:
将createtime为最新时间所在的组排在前面,同时,同一组内的数据按createtime降序排序。
最终结果如图2所示
View Code
(本文完)
有数据如图1,字段id是序号,id相同的为一组,createtime为创建时间。要求:
将createtime为最新时间所在的组排在前面,同时,同一组内的数据按createtime降序排序。
最终结果如图2所示
/*测试数据*/ WITH x0 AS ( SELECT 1 AS id , 100 AS data , CONVERT(DATETIME, '2015-09-01 12:23:56') AS createtime UNION ALL SELECT 1 AS id , 24 AS data , CONVERT(DATETIME, '2015-09-02 18:25:26') AS createtime UNION ALL SELECT 2 AS id , 68 AS data , CONVERT(DATETIME, '2015-09-01 08:46:12') AS createtime UNION ALL SELECT 2 AS id , 360 AS data , CONVERT(DATETIME, '2015-09-01 00:52:58') AS createtime UNION ALL SELECT 2 AS id , 200 AS data , CONVERT(DATETIME, '2015-09-03 10:08:36') AS createtime UNION ALL SELECT 3 AS id , 70 AS data , CONVERT(DATETIME, '2015-09-02 13:48:12') AS createtime UNION ALL SELECT 4 AS id , 108 AS data , CONVERT(DATETIME, '2015-08-31 03:11:23') ),/*分析函数求组内最新时间*/ x1 AS ( SELECT id , data , createtime , MAX(createtime) OVER ( PARTITION BY id ) AS createtime_max FROM x0 )/*对结果集排序*/ SELECT id , data , createtime FROM x1 ORDER BY createtime_max DESC , createtime DESC
View Code
(本文完)
相关文章推荐
- 唐诗三百首
- Makefile文件编写
- 探寻社交网络中的关系: 统计网络模型初探
- 绘图与动画之使用自定义属性与图像掩膜实现灯泡开关动画
- 设计模式
- 第57讲:Scala中Dependency Injection实战详解学习笔记
- 欢迎使用CSDN-markdown编辑器
- 开学啦。又长大了一年。
- Project 2013 如何使用visual studio 2012 创建一个Project 2013的外接程序addin
- TCPIP三次握手
- 同步异步与阻塞非阻塞区别
- centos6系统启动流程
- nginx在fedora上的使用
- Unity 相关经典博客资源总结
- Word Ladder**
- poj 2411 Mondriaan's Dream (轮廓线DP)
- ubuntu14.04安装GTX850M显卡驱动实录
- HTTP协议总结
- Java枚举类
- 【C/C++学院】0730-网站以及后门/结构体对齐、结构体面试分析/深拷贝与浅拷贝/队列/字符串封装