postgresql 批量insert代码
时间: 2023-07-01 11:28:20 浏览: 92
PostgreSQL实现批量插入、更新与合并操作的方法
可以使用 PostgreSQL 的 INSERT INTO 语句来实现批量插入数据。具体实现过程如下:
1. 构建 INSERT INTO 语句,指定要插入的表名和字段名。
```
INSERT INTO table_name (column1, column2, column3, ...) VALUES
```
2. 在 VALUES 后加上多组数据,每组数据用一对括号括起来,多组数据之间用逗号分隔。
```
INSERT INTO table_name (column1, column2, column3, ...) VALUES
(value1_1, value1_2, value1_3, ...),
(value2_1, value2_2, value2_3, ...),
...
```
3. 使用 EXECUTE 语句执行 INSERT INTO 语句,将多组数据批量插入到数据库中。
```
EXECUTE 'INSERT INTO table_name (column1, column2, column3, ...) VALUES
(value1_1, value1_2, value1_3, ...),
(value2_1, value2_2, value2_3, ...),
...';
```
完整的代码示例:
```
DO $$
DECLARE
values text := '';
BEGIN
FOR i IN 1..10 LOOP
values := values || format('(%s, %s, %s),', i, i*2, i*3);
END LOOP;
values := trim(trailing ',' from values);
EXECUTE format('INSERT INTO table_name (column1, column2, column3) VALUES %s', values);
END $$;
```
这段代码会向名为 table_name 的表中插入 10 组数据,每组数据包含 3 个字段,字段值分别为 1, 2, 3; 2, 4, 6; ...; 10, 20, 30。
阅读全文