📜  postgres 使用另一个表中的值更新列 - SQL (1)

📅  最后修改于: 2023-12-03 15:33:44.365000             🧑  作者: Mango

Postgres 使用另一个表中的值更新列 - SQL

在 Postgres 中,如果想要使用另一个表中的值来更新一列,可以使用 UPDATEJOIN 语句。

假设有两个表,分别是 table1table2table1 中有一个列需要更新,数据的来源是 table2。以下是解决方案:

UPDATE table1 
SET column1 = table2.column2
FROM table2
WHERE table1.id = table2.id;

这个语句将使用 table2 中的 column2 列的值,来更新 table1 中的 column1 列的值。WHERE 子句用于在两个表之间确定需要更新的行。

如果需要更新多列,只需在 SET 子句中添加多个列和对应的值即可。

UPDATE table1 
SET column1 = table2.column1,
    column2 = table2.column2,
    column3 = table2.column3
FROM table2
WHERE table1.id = table2.id;

此代码片段包含了说明如何在 Postgres 中使用另一个表中的值来更新一列的 SQL 语句。