postgresql----INSERT

Posted alian

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了postgresql----INSERT相关的知识,希望对你有一定的参考价值。

INSERT即向表中写入数据,每条INSERT语句可以写入一条数据,也可以写入多条数据。另外还可以将其他的查询结果集用在INSERT中,将查询结果写入表中。

测试表

test=# create table tbl_insert(a int,b varchar(32));
CREATE TABLE

示例1.单条记录INSERT

test=# insert into tbl_insert (a,b) values (1,test);
INSERT 0 1

示例2.多条记录INSERT

和单条记录INSERT的差别是各value间使用逗号分隔,最后一个value跟分号。

test=# insert into tbl_insert (a,b) values (2,test),(3,sd),(4,ff);
INSERT 0 3

 

示例3.查询结果INSERT

generate_series(1,10)生成1到10连续的10个数字,concat将参数串接在一起组成新的字符串,入参可以有很多个。
test=# insert into tbl_insert (a,b) select id,concat(id,test) from generate_series(1,10) id;
INSERT 0 10
test=# select * from tbl_insert ;
 a  |   b    
----+--------
  1 | test
  2 | test
  3 | sd
  4 | ff
  1 | 1test
  2 | 2test
  3 | 3test
  4 | 4test
  5 | 5test
  6 | 6test
  7 | 7test
  8 | 8test
  9 | 9test
 10 | 10test
(14 rows)

 

示例4.SELECT INTO创建新表,并将查询结果写入表中,但是如果表已存在则会失败。

test=# select * into tbl_insert1  from tbl_insert ;
SELECT 14
test=# select * into tbl_insert1  from tbl_insert ;
ERROR:  relation "tbl_insert1" already exists

 

以上是关于postgresql----INSERT的主要内容,如果未能解决你的问题,请参考以下文章

postgresql Insert插入的几个报错

Postgresql INSERT RETURNING 复杂类型

Postgresql insert on conflict笔记

PostgreSQL INSERT 插入一个枚举数组

PostgreSQL INSERT INTO 语句

PostgreSQL INSERT INTO 语句