排行榜的问题,上升及下降排名如何设置?

排行榜的问题,上升及下降排名如何设置?

现在有一个问题,我有一个榜单数据,每天都会排出来一次
譬如,表table1

account | value1 | Order
------------------------
bbb 30 1 
ccc 15 2
aaa 10 3


第二天又会排出一个名次,还是表table1,即把昨天覆盖了

account | value1 | Order
------------------------
aaa 40 1
bbb 30 2 
ccc 15 3


因为account每天消费的值不一样,所以Order会变化。


***********************************************
******************* 问题来了 ******************
***********************************************


我如何得到account上升的名次?

account | OrderChanged
------------------------
aaa +2
bbb -1 
ccc -1


因为我每次排榜的时候都会将之前的覆盖,所以以前的没有了。

所以我的想法是:在table1中加一个字段,然后通过临时表来保存上一个表,最后计算出来。


不知道有没有更好的方法,如果有,请不吝赐教!



也就是我第二天排出来的应该是这样:

account | value1 | Order | OrderChanged
-----------------------------------------
aaa 40 1 +2
bbb 30 2 -1
ccc 15 3 -1




因为我之前排的时候已经有LEFT OUTER JOIN了。怎么再JOIN进去?

INSERT database.bx_top_level
SELECT t0.ID, t0.Value1, t1.Name, t2.Name, @nRankOrder:=@nRankOrder + 1 FROM database.account AS t0
LEFT OUTER JOIN (database.factroy_info AS t1, database.address_info AS t2) ON (t1.FactroyID=t0.FactroyID AND t2.AddressID=t0.AddressID)
ORDER BY Value1 Desc;

t1.Name,t2.Name在Account中没有,而是一个外键到factroy_info和address_info中。





作者: madmanahong   发布时间: 2011-05-11

今天的排名统计数据和昨天的排名统计数据比较

作者: rucypli   发布时间: 2011-05-11

弄2个表吧,一个历史排名表,一个当前排名表。这样就很好比较了。

作者: zuoxingyu   发布时间: 2011-05-11

一般是怎么做的呢?各位老大们。

作者: madmanahong   发布时间: 2011-05-11

每天统计的排名数据有时间字段和名次字段吧


拿今天的数据和昨天的数据比较,然后名次相减

作者: rucypli   发布时间: 2011-05-11