MySLQ排序后标记排行
Posted 星辰大海
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySLQ排序后标记排行相关的知识,希望对你有一定的参考价值。
查询排行及所有(表名.*)
1.
set @rownum=0; SELECT @rownum:=@rownum+1 AS top, customer.* FROM customer
2.
SELECT @rownum:=@rownum+1 AS top, customer.* FROM (SELECT @rownum:=0) r, customer ORDER BY customer.this_month_cost DESC
1和2的结果:
查询排行及id(表名.id)
SELECT @rownum:=@rownum+1 AS top, customer.id FROM (SELECT @rownum:=0) r, customer ORDER BY customer.this_month_cost DESC
结果:
排序后更新原表的排行:
UPDATE `customer` c, ( SELECT @rownum :=@rownum + 1 AS rownum, customer.id FROM (SELECT @rownum := 0) r, customer ORDER BY customer.this_month_cost DESC ) a SET c.top = a.rownum WHERE c.id = a.id
-----------------------------------条条大路通罗马------------------------------------------
以上是关于MySLQ排序后标记排行的主要内容,如果未能解决你的问题,请参考以下文章
RedMonk语言排行:Kotlin上升8位,TS快进前10