易截截图软件、单文件、免安装、纯绿色、仅160KB

请教一个排名的sql语句 - MS-SQL Server / 基础类

我有一个表a,里面有三个字段,股票id,成本,收益
毛利率的计算公式是mao=(成本-收益)/成本
现在需要按照2个区间得到股票排名的名次
0.1<mao≤1 mao≤0.1
也就是说假如毛利率<=0.1的有500个股票,毛利率在0.1和1之间的有1500个股票
那么股票的排名的名次分别是1~500和1~1500

SQL code:
select * ,(select count(1) from
(select *,case when (成本-收益)*1.0/成本<=0.1 then 0.1 else 1 end mao from [a]) bb
where mao=aa.mao and (成本-收益)*1.0/成本<=(aa.成本-aa.收益)*1.0/aa.成本
)
from (select *,case when (成本-收益)*1.0/成本<=0.1 then 0.1 else 1 end mao from [a])aa


谢谢啊,如果是更多区间呢?
A≤0 0<A≤0.2 0.2<A≤0.4 0.4<A≤1

比如这种,那你的case when 里面不就不够算了?

那你就case when 里加when啊

能不能用rank这样的函数实现呢?


引用
能不能用rank这样的函数实现呢?


能提供测试数据和想要的结果吗,看描述看的晕

测试数据比如
stockid A
1 0.05
2 0.09
3 0.07
4 0.17
5 0.12
7 -1
8 -2

区间是A≤0 0<A≤0.1 0.1<A≤0.2
要得到股票代码对应的A值在上面区间中的一个排名(降序或者升序),就是类似这样的

升序排名
排名 stockid A
1 7 -1
2 8 -2

1 1 0


相关问答:

数据以xml格式返回 - MS-SQL Server / 应用实例

从数据库中查询一张表的数据
select 部门,姓名 from tb
如何才能生成下面的xml格式
XML code:
<folder state="unchecked" label="全部">
   <folder state="unchecked&qu ......

MS SQL作业问题 - MS-SQL Server / 应用实例

如何在SQL2005中设定定时作业,比如说定时清理某些表的数据,
或者是定时的将某些表的数据导出excel!
在线等待,急急急,最好是详细步骤!
之前我做的作业有点问题!
帮UP

参考:http://hi.baidu.com/toiota ......

求一SQL - MS-SQL Server / 基础类

tab1 字段:billdate,goodsid,incount,inmoney,outcount,outmoney,endprice,endcount,endamt
tab2 字段:goodsid,goodskind(商品类型)
tab3 字段:goodskind(商品类型),kindname
结果:
得到商品类型在一段时间 ......

求一个SQL语句 - MS-SQL Server / 基础类

字段1,字段2.....字段N,Status,ParentID
1,Name1....test1,1,99
1,Name1....test1,3,99
1,Name2....test2,1,101
1,Name2....test2,3,101
1,Name3....test3,2,101
1,Name1....test1,4,101
想要的结果是:
1,Na ......

sql 问题 - MS-SQL Server / 基础类

需求如下:
学院 academy(aid,aname)
班级 class(cid,cname,aid)
学生 stu(sid,sname,aid,cid)
住宿区 region(rid,rname)
宿舍楼 build(bid,rid,bnote) bnote是‘男’/‘女’
宿舍 dorm(did,rid,bid,bedn ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号