在 PostgreSQL 中,插入数据是通过 INSERT INTO 语句来实现的。下面是一些插入数据的基本示例:

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