问题一:我现在做报表查询比如有这样的表
sale count ....
-60 3 ....
24 6 ....
50 5 ....
-20 2
40 8 ....我要做这样的查询select row_number()over(order by(sale/count)desc),sale/count查询的结果成这样:
----------------------------------
1 10
2 5
3 4
4 -20
5 -10负数排序就有问题了,请问怎么解决?
问题二:
还有能不能有一种传递变量的查询
比如把sale/count放到变量K里,那我就可以类似这样查,效率就比较高些:
select row_number()over(order by(K)desc),sale/count
如果能哪位高手能解决问题一,满份想送,当然能顺便回答二那更好。
sale count ....
-60 3 ....
24 6 ....
50 5 ....
-20 2
40 8 ....我要做这样的查询select row_number()over(order by(sale/count)desc),sale/count查询的结果成这样:
----------------------------------
1 10
2 5
3 4
4 -20
5 -10负数排序就有问题了,请问怎么解决?
问题二:
还有能不能有一种传递变量的查询
比如把sale/count放到变量K里,那我就可以类似这样查,效率就比较高些:
select row_number()over(order by(K)desc),sale/count
如果能哪位高手能解决问题一,满份想送,当然能顺便回答二那更好。
解决方案 »
- 怎么给多个列取别名,或是分组。
- 请问这错在什么地方?大哥再给我看看
- oracle高级复制是不是必须要求2边表结构一致?
- 写了一个存储过程,但客户不让用游标,不知道怎么写了,高手们快来帮忙吧!!!!急..
- 使用toad 如何导出整个数据库中的所有DD
- 在oracle中如何调用VC或Delphi写的外部程序
- 求一条sql语句:不重复的选择记录
- 紧急求救:关于SQL语句中的左右连接问题("(+)"如何转换成标准的“LEFT OUTER JOIN” )
- sqlplus问题
- ??用exp导出表时,出现如下问题(用sqlplus也是),tns可以正常启动。请帮助!
- 如果在存储过程中将查询的结果集生成一个xml文件?
- 一条SQL语句调优,急急
>select row_number() over(order by sale/cnt desc) as sort, sale/cnt
2 from (
3 select -60 as sale,3 as cnt from dual union all
4 select 24 as sale,6 as cnt from dual union all
5 select 50 as sale,5 as cnt from dual union all
6 select -20 as sale,2 as cnt from dual union all
7 select 40 as sale,8 as cnt from dual); SORT SALE/CNT
---------- ----------
1 10
2 5
3 4
4 -10
5 -20第二个问题看不懂.
is
type cur is ref cursor;
procedure query( k in varchar2,Rst out cur);
end sp;
/
create or replace package body sp
is
procedure query(k in varchar2,Rst out cur)
is
sqlstr varchar2(4000);
begin
K:='sale/count';
sqlstr:='select row_number()over(order by('||K||')desc),sale/count';
open Rst for sqlstr;
end query;
end sp;
在我电脑上的结果:
1 10
2 5
3 4
4 -10
5 -20我二个字段都是NUMBER
你二个字段是什么数据类型