在Postgresql

时间:2018-04-10 20:49:11

标签: database postgresql

我有两个问题。这两个都是数据库中的1个表。

我有一张表"表现"。

Name Info 
x    12.5
y    9
z    10

如何在表格中添加列索引,如下所示? 我想要的输出是 -

Index Name Info
0     x    12.5
1     y    9
2     z    10
.......

假设我在1个表中有如上所述的数千行。

如何在postgresql数据库的每一行中插入行号? 第二个问题是如何逐一阅读索引列并将其打印在屏幕上?

我正在使用Python与此数据库进行交互。

我想使用一个使用row_number()的函数来生成数字并在数据库表中插入一列。

另外,我是一个新手和学习数据库。请不要低估这个问题。它伤害了我,我无法对其他相关帖子发表评论。如果可能请删除您的否定投票。

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用命令alter table.

添加列

您可以在单个serial语句中使用alter table假型,例如:

create table performance(name text, info numeric);
insert into performance values
('x', 12.5),
('y', 9),
('z', 10);

alter table performance add id serial;

select *
from performance;

 name | info | id 
------+------+----
 x    | 12.5 |  1
 y    |    9 |  2
 z    |   10 |  3
(3 rows)

如果您希望新列自动递增,请保持表格不变。如果您不想这样,请以这种方式删除序列:

alter table performance alter id drop default;
drop sequence performance_id_seq;