日期:2014-05-18  浏览次数:20600 次

求一条统计排序语句
表结构如下

奖品表
wishid   编号
num         所需票数
wname     名称

vote表
wishid   奖品编号
num         目前票数
ntype     投票类型

投票类型包括网络投票/手机投票/知识闯关
投票类型的三种类别的票数都有可能为0(即在vote表里没有该类别)
投票总数达到所需票数后即可得到奖品,
现在我想统计最近即将得到的奖品,该如何来写,谢谢各位!


------解决方案--------------------
--try

create table 奖品表(wishid int, num int, wname nvarchar(20))

create table vote(wishid int, num int, ntype nvarchar(10))

select
编号=A.wishid,
名称=A.wname,
所需票数=A.num,
目前票数=isnull(B.num, 0),
相差票數=A.num-isnull(B.num, 0)
from 奖品表 as A
left join
(select wishid, num=sum(num) from vote group by wishid)B
on A.wishid=B.wishid
order by 5