您的位置:首页 > 数据库 > SQL

mysql 求分组top

2015-12-28 10:47 465 查看
SELECT

atdate,          #业务日期

city_id,         #城市id

goods_id,        #商品id

rank             #排名

FROM

(

SELECT

oe.atdate,oe.city_id,oe.goods_id,oe.use_amt,

@rownum := @rownum+1,

IF(@city_id = oe.city_id , @rank :=@rank + 1 ,@rank := 1) AS rank, #排名

@city_id := oe.city_id

FROM(

SELECT atdate,city_id,goods_id,use_amt FROM dw.t_rpt_city_goods_distri_monitor_d t1 WHERE t1.`atdate`='2016-02-15'

ORDER BY city_id ASC,IFNULL(use_amt,0) DESC

) oe,

( SELECT @rank := 0, @city_id := NULL, @rownum := 0) rk

)m WHERE m.city_id=2 and rank<=50
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: