0

我在 Android 的 SQLite 数据库中有一个表,其中有一列RANK。它在游戏应用程序中。如果某个用户获得了排名,那么应该插入它的排名,并且应该增加先前存储的排名。

RANK列的值为1 2 3 4 5 6 7 8 9并且新用户获得RANK 3,然后我必须插入新用户的排名并增加先前的排名。我的意思是3 4 5 6 7 8 9应该是4 5 6 7 8 9 10并且应该插入新创建的3 RANK 。

有没有图书馆方法可以做到这一点?或者我必须定义自定义逻辑?

请帮我。如果需要自定义逻辑,那么至少给出一些提示。

4

1 回答 1

0

在插入新值之前执行此操作,如果 3 是您要插入的新值的等级:

UPDATE player SET rank=rank+1 WHERE rank >= 3;

前:

1|a
2|b
3|c
4|d
5|e

后:

1|a
2|b
4|c
5|d
6|e

然后你可以插入新的:

INSERT INTO player VALUES(3, "new");

给出最终结果:

SELECT * FROM player ORDER BY rank;

1|a
2|b
3|new
4|c
5|d
6|e
于 2012-04-05T12:13:41.237 回答