![](/img/trans.png)
[英]How to update records whose value is not in the ranges stored in another table
[英]Update all the records of a field in a table whose value is only in another table
我有表A:
+---------------+------------+-------+-------------+
| name | id_product | price | price_medium|
+---------------+------------+-------+-------------+
| phone | 1 | 300 | 300 |
| mouse | 2 | 50 | 75 |
| phone | 1 | 250 | 300 |
| keyboard | 3 | 100 | 100 |
| mouse | 2 | 100 | 75 |
| phone | 1 | 350 | 300 |
+---------------+------------+------+--------------+
表B是一個臨時表,每次購買時添加產品然后刪除。 發送時,我想在表 A 中更新表 B 中的列“price_medium”,其 product_id 是添加項。
+---------------+------------+-------+-------------+
| name | id_product | price | price_medium|
+---------------+------------+-------+-------------+
| phone | 1 | 100 | 220 |
| mouse | 2 | 125 | 92 |
| phone | 1 | 100 | 220 |
+---------------+------------+------+--------------+
最終結果將在表 A 中
+---------------+------------+-------+-------------+
| name | id_product | price | price_medium|
+---------------+------------+-------+-------------+
| phone | 1 | 300 | 220 |
| mouse | 2 | 50 | 92 |
| phone | 1 | 250 | 220 |
| keyboard | 3 | 100 | 100 |
| mouse | 2 | 100 | 92 |
| phone | 1 | 350 | 220 |
+---------------+------------+------+--------------+
id_product
在兩個表之間進行Inner Join
Set
更新 tableA 中的price_medium
(等於 tableB 中的price_medium
)嘗試:
UPDATE tableA AS tA
JOIN tableB AS tB ON tB.id_product = tA.id_product
SET tA.price_medium = tB.price_medium
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.