Lệnh SQL INSERT trong PostgreSQL à 1 trong 4 lệnh cơ bản của ngôn ngữ SQL. Câu lệnh thực hiện việc thêm, chèn dữ liệu vào bảng.
Cú pháp lệnh SQL INSERT trong PostgreSQL
[ WITH [ RECURSIVE ] with_query [, ...] ]
INSERT INTO table_name [ AS alias ] [ ( column_name [, ...] ) ]
{ DEFAULT VALUES | VALUES ( { expression | DEFAULT } [, ...] ) [, ...] | query }
[ ON CONFLICT [ conflict_target ] conflict_action ]
[ RETURNING * | output_expression [ [ AS ] output_name ] [, ...] ]
Thêm 1 dòng (row) vào bảng
Cú pháp:
INSERT INTO table(column_name_1, column_name_2, …) VALUES (value_1, value_2, …);
Ví dụ: Thêm dữ liệu cho bảng groups sau đây:

Để insert dữ liệu mới vào bảng:
INSERT INTO groups (group_name, created_at) VALUES ('admin', '2019-09-30 00:00:00');

Thêm nhiều dòng (rows) vào bảng
Cú pháp:
INSERT INTO table (column_name_1, column_name_2, …) VALUES (value_1, value_2, …), (value_1, value_2, …) , ...;
Ví dụ: Thêm nhiều row vào bảng groups
INSERT INTO groups (group_name, created_at)
VALUES
('admin', '2019-09-30 00:00:00'),
('developer', '2019-09-30 00:00:00'),
('design', '2019-09-30 01:00:00'),
('reviewer', '2019-09-30 02:00:00'),
('author', '2019-09-30 03:00:00');

Lấy id của bản ghi vừa insert vào bảng
Sử dụng từ khóa RETURNING để lấy id của bản ghi vừa được thêm vào bảng
INSERT INTO groups (group_name, created_at)
VALUES
('partner', '2019-09-30 04:00:00')
RETURNING group_id;

Insert dữ liệu từ một bảng khác
Tạo 1 bảng temporary cho bảng groups có tên là groups_temp
CREATE TABLE groups_temp (LIKE groups);
Sau đó insert dữ liệu từ groups sang groups_temp
INSERT INTO groups_temp SELECT * FROM groups WHERE group_id > 5;

Nguồn: vinasupport.com