1. 插入单行数据:
INSERT INTO employees (employee_id, first_name, last_name, salary, department)
VALUES (1, 'John', 'Doe', 50000, 'IT');
这个例子假设存在名为 employees 的表,具有列 employee_id、first_name、last_name、salary 和 department。通过 VALUES 子句,你可以为每一列指定要插入的值。
2. 插入多行数据:
INSERT INTO employees (employee_id, first_name, last_name, salary, department)
VALUES
(2, 'Jane', 'Smith', 60000, 'HR'),
(3, 'Bob', 'Johnson', 55000, 'Finance');
在这个例子中,我们一次插入了多行数据。
3. 插入从查询结果中的数据:
INSERT INTO new_employees (employee_id, first_name, last_name, salary, department)
SELECT employee_id, first_name, last_name, salary, department
FROM old_employees
WHERE department = 'Marketing';
这个例子中,我们从名为 old_employees 的表中选择特定部门的数据,并将其插入到名为 new_employees 的表中。
4. 插入部分列的数据:
INSERT INTO employees (first_name, last_name)
VALUES ('Alice', 'Johnson');
在这个例子中,我们只插入了 first_name 和 last_name 列的数据,其他列将使用默认值或 NULL。
5. 插入具有默认值的数据:
INSERT INTO employees (first_name, last_name)
VALUES
('Charlie', 'Williams'),
('David', 'Miller');
在这个例子中,我们插入了数据到 first_name 和 last_name 列,而 salary 和 department 则使用它们的默认值或 NULL。
6. 使用 RETURNING 子句获取插入数据的返回值:
INSERT INTO employees (first_name, last_name, salary, department)
VALUES ('Eva', 'Brown', 70000, 'Sales')
RETURNING employee_id;
通过 RETURNING 子句,可以获取插入数据后生成的列的值,如上例中的 employee_id。
这些是一些基本的 PostgreSQL 插入数据的示例。在执行插入操作之前,请确保了解目标表的结构和约束,并根据需要提供适当的值。
转载请注明出处:http://www.zyzy.cn/article/detail/8135/PostgreSQL