|
SELECT
date AS 'date',
pay AS 'pay',
rank,
roleId
FROM
(
SELECT
zl_tmp.roleId,
zl_tmp.date,
zl_tmp.pay,
@rownum := @rownum + 1,
IF(
@date = zl_tmp.date, @rank := @rank + 1,
@rank := 1
) AS 'rank',
@date := zl_tmp.date
FROM
(
SELECT
roleId,
SUM(cash) AS 'pay',
DATE_FORMAT(logTime, '%Y-%m-%d') AS 'date'
FROM
player_recharge
WHERE
logTime >= '2017-09-01'
AND logTime < '2017-10-01'
GROUP BY
date,
roleId
ORDER BY
date,
pay DESC
) zl_tmp,
(
SELECT
@rownum := 0,
@date := NULL,
@rank := 0
) a
) result
HAVING
rank |
|
|