如何计算mysql中的排名

时间:2017-09-07 06:24:08

标签: mysql

我需要计算mysql中的排名。假设我有整月的产品销售额总和列表,那么我需要从最高销售额中对产品进行排名,以便排名为1,2,3等等

Month  Product  Sum of Sales

Jan     Latop       450000
jan     Latop       150000
Jan     Latop       250000
Feb     Desktop     200000
Feb     Desktop     150000
Feb     Desktop     180000

所以从上面数据输出就像

月份产品销售额总和

Jan     Latop       450000  1
Jan     Latop       250000  2
jan     Latop       150000  3
Feb     Desktop     200000  1
Feb     Desktop     180000  2
Feb     Desktop     150000  3

2 个答案:

答案 0 :(得分:0)

您可以这样做:

SELECT month,product,sumOfSales, @curRank := @curRank + 1 AS rank
FROM products p, (
SELECT @curRank := 0
) q
ORDER BY sumOfSales DESC;

我假设表名为product,列名为sumOfSales

答案 1 :(得分:-1)

您可以使用此查询 SELECT销售FROM TABLE按销售DESC排序 sales是您存储销售总额的列名 查询将以大多数销售首先返回记录,依此类推。