如何通过添加数字后缀使字符串键唯一?

dan*_*tel 2 sql sqlite

我有一个带有两列n整数和s varchar的表。n是主键。s通常是唯一的,但并非总是如此。例如

n   s
1   New York
2   Moscow
3   Paris
4   London
5   Moscow
6   Berlin
7   Moscow
Run Code Online (Sandbox Code Playgroud)

我想创建另一个具有相同结构,相同行数的表,除了通过将数字后缀添加到第二个或以后的出现使s唯一。例:

n   s
1   New York
2   Moscow
3   Paris
4   London
5   Moscow 2
6   Berlin
7   Moscow 3
Run Code Online (Sandbox Code Playgroud)

通过一个与平台无关的方式的单个SQL命令(sqlite是我的数据库)。有任何想法吗?

Hor*_*ez. 5

SELECT e.ID,e.Name,(从Table1中选择COUNT(*)作为d,其中d.ID <e.ID AND d.Name = e.Name)从Table1中作为e;