📅  最后修改于: 2023-12-03 15:03:49.597000             🧑  作者: Mango
在 PostgreSQL 中,我们可以使用 INSERT INTO 语句将数据插入到表中。下面是一个示例:
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);
在这个示例中,我们将数据插入到 table_name
表中,并指定要插入数据的列名和对应的值。如果不是所有的列都要插入数据,只需包含需要插入的列即可。
例如,如果我们有一个名为 employees
的表,其中包含以下列:
id
first_name
last_name
email
我们可以插入一条新的记录,如下所示:
INSERT INTO employees (first_name, last_name, email)
VALUES ('John', 'Doe', 'john.doe@example.com');
在这个示例中,我们只插入了 first_name
、last_name
和email
的值。如果我们在 INSERT INTO
语句中不包含 id
列,则 PostgreSQL 将为该列自动分配一个值。
除了上面的语法之外,我们还可以使用以下语法将 SELECT 查询结果插入到表中:
INSERT INTO table_name (column1, column2, column3, ...)
SELECT expression1, expression2, expression3, ...
FROM source_table
WHERE conditions;
在这个示例中,我们使用 SELECT
查询语句获取数据,并将其插入到 table_name
表中。我们还可以使用 WHERE
子句来指定要选择的数据行。
例如,如果我们有一个名为 employees_new
的表,其中包含以下列:
id
first_name
last_name
email
我们可以从 employees
表中选择所有姓氏为 Doe
的员工,并将结果插入到 employees_new
表中,如下所示:
INSERT INTO employees_new (first_name, last_name, email)
SELECT first_name, last_name, email
FROM employees
WHERE last_name = 'Doe';
在这个示例中,我们选择了 employees
表中所有姓氏为 Doe
的员工,并将其插入到 employees_new
表中。
总结:
INSERT INTO
语句将数据插入到表中。SELECT
查询语句将查询结果插入到表中。