首頁 > 資料庫 > mysql教程 > 如何使用另一個表中的值更新 MySQL 欄位?

如何使用另一個表中的值更新 MySQL 欄位?

Linda Hamilton
發布: 2025-01-17 04:51:09
原創
497 人瀏覽過

How to Update a MySQL Column with Values from Another Table?

MySQL資料庫:使用另一張表的值更新欄位

本文目標是根據符合的名稱,使用「tableA」中的對應值填入「tableB」中的「value」列。

UPDATE語句語法:

為了更新「tableB」中的「value」列,我們可以使用以下UPDATE語句:

<code class="language-sql">UPDATE tableB
SET tableB.value = (
  SELECT a.value
  FROM tableA a
  WHERE a.name = tableB.name
)
WHERE tableB.name IN (
  SELECT name
  FROM tableA
);</code>
登入後複製
登入後複製

說明:

  • 內部SELECT查詢根據符合的「name」找出「tableA」中對應的「value」。
  • 外部UPDATE語句使用找到的值更新「tableB」中的「value」欄位。
  • 外部UPDATE語句中的WHERE子句確保只更新符合的記錄。

範例:

使用範例資料:

<code class="language-sql">UPDATE tableB
SET tableB.value = (
  SELECT a.value
  FROM tableA a
  WHERE a.name = tableB.name
)
WHERE tableB.name IN (
  SELECT name
  FROM tableA
);</code>
登入後複製
登入後複製

執行此語句後,「tableB.value」將更新如下:

<code>id  name  value
===================
1   Joe     22
2   Derk    30</code>
登入後複製

其他選項:

  • 要只更新特定行,可以在WHERE子句中加入其他條件。
  • 要根據“tableA.value”動態更新“tableB.value”,可以在SET子句中使用IF語句,如範例所示。

以上是如何使用另一個表中的值更新 MySQL 欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板