我怎样才能从MySQL的另一个表更新与值的两个表中的值

问题描述 投票:-2回答:2

我有3个表,T1,T2,T3。我需要更新从T1 stock_status和来自T2限于与来自stock_status值并限制从T3,只有在SKU是匹配的。另外,ENTITY_ID是PRODUCT_ID记者。

这是更好地了解picture图像

我被困在从stock_status从T3在stock_status从T1移动值,因为我不直接有一个共同的领域。

对于有限的领域,我试过了。

UPDATE t2,t3 INNER JOIN t3 on t2.sku = t3.sku SET t2.limited = t3.limited
mysql sql-update
2个回答
0
投票

试试这些

UPDATE t1
        JOIN
    t2
        JOIN
    t3 
SET 
    t1.stock_status = t3.stock_status
WHERE
    t1.product_id = t2.entity_id
        AND t2.sku = t3.sku;

.

UPDATE t2
        JOIN
    t3 
SET 
    t2.limited = t3.limited
WHERE
    t2.sku = t3.sku;

0
投票

你应该用加T1和T2的更新也t1.stock_status之间的内部连接

  UPDATE t2,t1 
  INNER JOIN t3 on t2.sku = t3.sku 
  INNER JOIN t1 on t1.product_id = t2.entity_id
  SET t2.limited = t3.limited, 
      t1.stock_status = t3.stock_status
© www.soinside.com 2019 - 2024. All rights reserved.