2

そのため、以前にこの問題を抱えていた人もいるようですが、検索しても私の場合の答えは見つかりませんでした.

私は走っています

 UPDATE ProdCosts SET PercentCost = ((ProdCosts.PieceCost/totalprodcost.sumpiececost)*100)
 WHERE totalprodcost.ProdNo=ProdCosts.ProdNo;
 AND ProdCosts.PieceCost > 0;

エラーが発生する

MySQL said: Documentation
#1054 - Unknown column 'totalprodcost.ProdNo' in 'where clause' 

DESCRIBE totalprodcost ショー:

Field   Type    Null    Key     Default     Extra
ProdNo  int(11) YES         NULL    
sumpiececost    double  YES         NULL    

私はこれを理解することはできません。それは十分に単純に思えます。何を与える?

4

2 に答える 2

0

UPDATEステートメントでテーブルを結合し、

UPDATE  ProdCosts a
        INNER JOIN totalprodcost b
            ON b.ProdNo = a.ProdNo
SET     a.PercentCost = ((a.PieceCost/b.sumpiececost)*100)
WHERE   a.PieceCost > 0;
于 2013-01-31T04:49:47.173 に答える
0

このクエリを試してください

UPDATE ProdCosts, totalprodcost SET ProdCosts.PercentCost = ((ProdCosts.PieceCost/totalprodcost.sumpiececost)*100) WHERE totalprodcost.ProdNo=ProdCosts.ProdNo AND ProdCosts.PieceCost > 0;
于 2013-01-31T05:14:10.093 に答える