自增数字函数-postgres
autoincrement number function-postgres
我有一个 table 这样的:
id
person
20
adams
20
george
40
jina
46
rico
80
naya
90
john
90
peter
90
richard
我想找到一种方法 select 一个 new_id 从 1 开始,每次 id 不同时增加 +1。例如,我想要一个 select 结果如下:
new_id
id
person
1
20
adams
1
20
george
2
40
jina
3
46
rico
4
80
naya
5
90
john
5
90
peter
5
90
richard
postgres 中是否有类似的功能?
使用dense_rank()
select dense_rank()over(order by id) as newid,id,persion
from table_name
我有一个 table 这样的:
id | person |
---|---|
20 | adams |
20 | george |
40 | jina |
46 | rico |
80 | naya |
90 | john |
90 | peter |
90 | richard |
我想找到一种方法 select 一个 new_id 从 1 开始,每次 id 不同时增加 +1。例如,我想要一个 select 结果如下:
new_id | id | person |
---|---|---|
1 | 20 | adams |
1 | 20 | george |
2 | 40 | jina |
3 | 46 | rico |
4 | 80 | naya |
5 | 90 | john |
5 | 90 | peter |
5 | 90 | richard |
postgres 中是否有类似的功能?
使用dense_rank()
select dense_rank()over(order by id) as newid,id,persion
from table_name