2
如果我有2个表,每个表有product_stat
DECIMAL和product_id
INT列使用TableB中的值更新TableA?
我想运行一个查询,将追加product_stat从表A至表B上的product_id。然后截断表A
基本上我正在收集数据并暂时存储在TableA中,并且每天一次我想将数据移动到TableB。因此TableB只将数据每天移动一次。
如果我有2个表,每个表有product_stat
DECIMAL和product_id
INT列使用TableB中的值更新TableA?
我想运行一个查询,将追加product_stat从表A至表B上的product_id。然后截断表A
基本上我正在收集数据并暂时存储在TableA中,并且每天一次我想将数据移动到TableB。因此TableB只将数据每天移动一次。
的基切,解决方案是使用子查询
UPDATE tableB SET product_stat = (
SELECT product_stat FROM tableA
WHERE tableB.product_id = tableA.product_id
)
但是你可以在JOIN结合使用UPDATE,这将有更好的表现
UPDATE tableB
INNER JOIN tableA ON tableB.product_id = tableA.product_id
SET tableB.product_stat = tableA.product_stat
UPDATE Authors AS A, Books AS B SET AuthorLastName = 'Wats' WHERE B.AuthID = A.AuthID AND AND ArticleTitle='Something';
您查询重写,而不是加入。它的好处,但是,这足以写我喜欢它:) – 2010-10-11 20:51:40