MySQL使用用户变量更新分组排序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL使用用户变量更新分组排序相关的知识,希望对你有一定的参考价值。
第一个需求是根据A字段进行排序,排序结果更新到B字段
简单搜索之后,很快得到答案
http://dev.mysql.com/doc/refman/5.7/en/update.html
SET @a=0; UPDATE tableName SET a = ( SELECT @a := @a +1 ) ORDER BY b ASC
第二个需求是根据A字段分组,对B字段排序,排序结果更新到C字段
SET @C = 0;SET @A = 0; UPDATE tableName SET C = ( SELECT CASE WHEN @A = A THEN @C := @C + 1 ELSE (@C := @C + 1 AND @A := A) END ) ORDER BY A,B
结果是正确了,但是不太明白为什么……
To be continue
以上是关于MySQL使用用户变量更新分组排序的主要内容,如果未能解决你的问题,请参考以下文章