手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

mysql 排名函数

时间:2024-10-15 03:12:01

1、原始的表数据如下图。done_seconds为完成的时间,需求为根据该字段来对每条数据进行排名。

mysql 排名函数

2、输入以下SQL语句:SELECT A.*,@rank:=@rank+1 钽吟篑瑜AS pm FROM (SELECT * FROM task忧溲枷茫_news_user_done_list ORDER BY done_seconds) A, (SELECT @rank:=0) B

mysql 排名函数

3、执行该条语句后,查询出来的结果中,加入了pm字段。该字段的值就是根据done_seconds进行排序的结果。注意,升序,降序的问题。

mysql 排名函数

4、除了单个字目愿硅囫段外,还可以对平均值进行排序。如对上表中相同user_email的done_seconds的平均值进行排序,可用以下sql语句:S呶蓟鹭毵ELECT A.*,@rank:=@rank+1 AS pmFROM(SELECT user_email, AVG(done_seconds) AS done_seconds FROM task_news_user_done_list GROUP BY user_email ORDER BY done_seconds) A, (SELECT @rank:=0) B

mysql 排名函数

5、排序后结果如下图。此时的排名就是所有相同user_email的done_seconds进行的平均值排名。

mysql 排名函数

6、当然还可以根据需要加入where等限制条件。如下图。觉得有用的点下赞。

mysql 排名函数
© 手抄报圈