`
zhangyou1010
  • 浏览: 299639 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

oracle sql row_number 排序后分组处理

阅读更多
表结构:
create table post(group_id number , ctime date);

数据:
           GROUP_ID        CTIME
1        2641        2010-10-11 上午 11:33:41
2        2644        2010-10-11 上午 11:31:38
3        2641        2010-10-11 上午 11:25:29
4        2921        2010-8-27 下午 04:00:33
5        2921        2010-8-27 下午 03:19:10
6        2721        2010-7-30 下午 04:36:08
7        2721        2010-7-30 下午 04:35:53
8        2821        2010-7-30 下午 04:20:40
9        2644        2010-7-30 下午 04:17:24
10        2721        2010-6-22 下午 03:42:38
11        5721        2010-6-22 下午 01:59:41
12        3721        2010-6-17 下午 01:26:40
13        1721        2010-6-17 下午 01:02:42
14        6721        2010-6-17 下午 01:02:37
15        2721        2010-6-17 下午 01:02:30
16        2721        2010-6-17 下午 01:00:39
17        2721        2010-6-17 下午 01:00:24
18        2721        2010-6-17 下午 12:59:28
19        2721        2010-6-17 下午 12:59:22
20        2721        2010-6-17 下午 12:59:14


要根据ctime排倒序,求group_id排前10的数据,group_id不能有重复的,也就是说,第一条

数据和第三条数据的group_id相同,但只要取第一条,时间在前面的那条,用普通的排序,分

组,去重复没有解决,用分析函数解决了.
select *
  from (select t.group_id, t.ctime
          from (select group_id,
                       ctime,
                       row_number() over(partition by group_id order by ctime desc) aaa
                  from MOKA_GROUP_POST) t
         where t.aaa = 1
         order by ctime desc) b
 where rownum < 11


分享到:
评论

相关推荐

    oracle中rownum和row_number()

    row_number()over(partition by col1 order by col2)表示根据col1分组,在分组内部根据col2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的)。 与rownum的区别在于:使用rownum进行排序的...

    Oracle数据库rownum和row_number的不同点

    在Oracle中,有一个很有趣的东西,那就是rownum。当你从某个表中查询数据的时候,返回的结果集中都会带有rownum这个字段,而且有时候也可以使用rownum进行一些条件查询

    oracle sql 行列转换

    行列转换,sys_connect_by_path,row_number等函数的用法

    oracle sql 排序

    总结三种排序方式的共同点和不同点,已经排除空值后排序的oracle语句用法

    分组排序选择需要一条

    sql 排序:row_number() over(partition by sjjl_id order by fksj desc,最优化的情况,里面放的有例子,大家可以参考

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    作者通过总结各自多年的软件开发和教学培训经验,与大家分享了掌握Oracle SQL所独有的丰富功能的技巧所在,内容涵盖SQL执行、联结、集合、分析函数、子句、事务处理等多个方面。读者可以学习到以下几个方面的技巧:...

    Oracle开发之分析函数(Rank, Dense_rank, row_number)

    在前面一篇《Oracle开发之分析函数简介Over》,我们认识了分析函数的基本应用,现在我们再来考虑下面几个问题: ①对所有客户按订单总额进行排名 ②按区域和客户订单总额进行排名 ③找出订单总额排名前13位的客户 ④...

    Oracle数据库优化策略总结篇

    因为Oracle出于通用性的琢磨,其函数及数学计算的速度远不及用C语言直接编译成机器码后计算来的快。 绑定变量 这个能够大幅度减退SQL的“hard parse”,我们大局部过程都曾经告终了变量绑定。个别

    mysql代码-查询每天前三条数据 按照交易价格大到小排序 相当于模拟Oracle Row_Number() OVER (partition by date ORDER BY pay desc)

    mysql代码-查询每天前三条数据 按照交易价格大到小排序 相当于模拟Oracle Row_Number() OVER (partition by date ORDER BY pay desc)

    Oracle中使用Rownum分页详细例子

    在MySQL中,我们通常都使用limit来完成数据集获取的分页操作,而在Oracle数据库中,并没有类似limit一样的方便方法来实现分页,因此我们通常都是直接在SQL语句中完成分页,这里就需要借助于rownum伪列或row_number()...

    oracle恢复工具-FY_Recover_Data

    由于在System表空间中已经记录了新的信息, 因此用当前的System信息是不能恢复过来的,在AUL/MyDUL中可以当作没有System时的情况来处理,在下面的命令中, 我们用Truncate后的数据对象号就不能进行恢复, 而使用Truncate...

    Oracle事例

    sql&gt; create user juncky identified by oracle default tablespace users sql&gt; temporary tablespace temp quota 10m on data password expire sql&gt; [account lock|unlock] [profile profilename|default]; ...

    oracle使用dblink高速复制表数据的动态存储过程

    程序同步到执行结束时的目标表所有数据,不按任何字段排序,只判断并记录row_number()到日志表,中断后重新执行可继续同步,如果目标表频繁读写,不保证数据完全正常,故最好是目标表不变动情况下执行同步。...

    Oracle数据库管理员技术指南

    5.2.9 备用激活后的四项工作 5.2.10 将归档重做日志自动传送到备用 数据库 5.2.11 启动管理恢复 5.2.12 只读打开备用数据库 5.2.13 热备用数据库的维护 5.3 回顾 第6章 高级的失败切换方法 6.1 将 Oracle ...

    oracle实验报告

    (3) 学会使用高级SQL命令,排序、分组、自连接查询等。 (4) 学会使用SQL*PLUS命令显示报表,存储到文件等。 【实验内容】 一、 准备使用SQL*PLUS 1. 进入SQL*PLUS 2. 退出SQL*PLUS 3. 显示表结构命令DESCRIBE SQL&gt;...

    MySQL rownumber SQL生成自增长序号使用介绍

    MySQL 几乎模拟了 Oracle,SQL Server等商业数据库的大部分功能,函数。但很可惜,到目前的版本(5.1.33)为止,仍没有实现ROWNUM这个功能

    ora分析脚本

    using sql_id along with child number instead of hash value # ora webplan aca4xvmz0rzup/3 1 - hash_to_sqlid &lt;sql_id&gt; : get the sql_id of the cursor given its hash value - sqlid_to_hash &lt;sql_id&gt;: ...

Global site tag (gtag.js) - Google Analytics