---
title: "PostgreSQL UPDATE Join "
description: "這個查詢示範如何使用 PostgreSQL 的 UPDATE join 語法，根據另一張資料表的值來更新某張資料表的資料。例如；"
canonical: https://oozou.com/til/postgresql-update-join-64
locale: zh-Hant
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-Hant/til-topics/ruby-on-rails) ([markdown](https://oozou.com/zh-Hant/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-Hant/contact

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