我有两个表,一个称为详细信息,另一个称为 c_details。除了表名不同外,两个表完全相同
不,我在这两个表中都有数据
是否可以使用 c_details 中的行详细更新该行
例如。
更新详细信息集(从 c_details 中选择 *)?
您必须明确描述要更新的列列表,以及在两个表之间匹配列的键。
从另一个表更新一个表的语法在 PostgreSQL 文档的UPDATE 一章中有详细描述。
UPDATE
details
SET
name = c.name,
description = c.description
FROM
c_details AS c
WHERE
c.id=details.id;
Run Code Online (Sandbox Code Playgroud)
如果您需要 UPDATE FROM SELECT 并根据聚合函数 (MIN) 设置字段,那么 SQL 应读取:
UPDATE
details
SET
name = (
SELECT
MIN(c.create_at)
FROM
c_details AS c
WHERE
c.type = 4
)
WHERE
c.id = details.id;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3607 次 |
| 最近记录: |