---
title: "PostgreSQL UPDATE Join "
description: "这个查询演示了如何使用 PostgreSQL 的 UPDATE join 语法，根据另一张数据表的值来更新某张数据表的数据。例如；"
canonical: https://oozou.com/til/postgresql-update-join-64
locale: zh-Hans
date: 2020-10-13
topic: ruby-on-rails
---

# PostgreSQL UPDATE Join 

> 这个查询演示了如何使用 PostgreSQL 的 UPDATE join 语法，根据另一张数据表的值来更新某张数据表的数据。例如；

Published: 2020-10-13 · Topic: [ruby on rails](https://oozou.com/zh-Hans/til-topics/ruby-on-rails) ([markdown](https://oozou.com/zh-Hans/til-topics/ruby-on-rails.md))

这个查询演示了如何使用 PostgreSQL 的 UPDATE join 语法，根据另一张数据表的值来更新某张数据表的数据。例如；

通过 *mission\_rewards* 数据表，以 *rewards.gift\_box\_type* 更新 *subscription\_missions.giftbox\_type*（在 30 万条数据上测试过，快到不可思议）

```sql
  UPDATE
        subscription_missions sm
  SET
        giftbox_type = r.gift_box_type
  FROM
        mission_rewards mr,
        rewards r
  WHERE
        sm.giftbox_type IS NULL
        AND sm.id = mr.subscription_mission_id
        AND mr.reward_id = r.id;
```

---

Contact OOZOU: hello@oozou.com · +66 2544 0000 · https://oozou.com/zh-Hans/contact

More for AI agents: https://oozou.com/llms.txt · every page has a markdown twin at its URL plus ".md"
