免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1781 | 回复: 1
打印 上一主题 下一主题

oracle的bug? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-07-20 14:05 |只看该作者 |倒序浏览
在oracle 9i上使用rank分析函数,在主查询上使用order by col,当col是分析函数所在的字段时,查询只能返回一行,如果是order by col desc则正常,不知道这个算不算是bug?



SQL> select * from all_sales;

      YEAR      MONTH PRD_TYPE_ID     EMP_ID     AMOUNT         ID
---------- ---------- ----------- ---------- ---------- ----------
      2003         10           1         21   21754.19         10
      2003          1           2         21   10014.84         11
      2003          2           2         21   15844.65         12
      2003          3           3         21   20937.83         13
      2003          4           3         21   25357.45         14
      2003          5           4         21   17714.56         15
      2003          6           4         21   16564.64         16
      2003          7           5         21   12684.84         17
      2003          8           5         21   12434.82         18
      2003          9           3         21   19154.57         19
      2003         10           3         21   21554.19         20

已选择11行。

SQL> select
  2    prd_type_id,sum(amount),
  3    RANK() OVER (ORDER BY SUM(amount) DESC) AS rk
  4   from all_sales
  5   group by prd_type_id;

PRD_TYPE_ID SUM(AMOUNT)         RK
----------- ----------- ----------
          3    87004.04          1
          4     34279.2          2
          2    25859.49          3
          5    25119.66          4
          1    21754.19          5

SQL> select
  2    prd_type_id,sum(amount),
  3    RANK() OVER (ORDER BY SUM(amount) DESC) AS rk
  4   from all_sales
  5   group by prd_type_id
  6   order by rk;

PRD_TYPE_ID SUM(AMOUNT)         RK
----------- ----------- ----------
          5   107770.95          1
SQL> select
  2      prd_type_id,sum(amount),
  3      RANK() OVER (ORDER BY SUM(amount) DESC) AS rk
  4     from all_sales
  5     group by prd_type_id
  6     order by rk desc;
PRD_TYPE_ID SUM(AMOUNT)         RK
----------- ----------- ----------
          1    21754.19          5
          2    25119.66          4
          5    25859.49          3
          3     34279.2          2
          4    87004.04          1


SQL>

论坛徽章:
0
2 [报告]
发表于 2008-07-21 08:22 |只看该作者
就没人测试一下吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP