说我有一张桌子
name rank
-----------------------
John 1
Tit 3
Bernard 4
Run Code Online (Sandbox Code Playgroud)
排名2缺失,可能已被删除或其他.我需要一个查询来增加排名字段.所以约翰将成为第一名,但是现在是第2名,而伯纳德则是第3名.
可能有多达100个等级,有几个失踪.只要最小的等级重置为数字1,并且所有后续增量,它应该是好的.
有任何想法吗?
用于更新排名字段的查询.
这将更新排名字段,使其增加没有漏洞:
SET @i := 0;
UPDATE tbl SET rank = @i:=@i+1 ORDER BY rank;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1747 次 |
| 最近记录: |