product
からのデータでテーブルを更新するための簡単なクエリを次に示しますhelper
。
UPDATE product p
INNER JOIN helper h ON p.productcode = h.productcode
SET p.picture = h.picture;
しかし、WHERE p.gotpicture=0
テーブル全体ではなく p.gotpicture=0 のレコードのみを更新するために最後に追加すると、クエリは 0 行を更新します。なんで?
product
からのデータでテーブルを更新するための簡単なクエリを次に示しますhelper
。
UPDATE product p
INNER JOIN helper h ON p.productcode = h.productcode
SET p.picture = h.picture;
しかし、WHERE p.gotpicture=0
テーブル全体ではなく p.gotpicture=0 のレコードのみを更新するために最後に追加すると、クエリは 0 行を更新します。なんで?
私はテスターで、うまく機能しています。
しかし、これらをテストすることができます:
UPDATE product p , helper h
SET p.picture = h.picture
WHERE p.gotpicture=0
AND p.productcode = h.productcode;
または
UPDATE product p
SET p.picture = (select h.picture from helper h where p.productcode = h.productcode)
WHERE p.gotpicture=0
AND p.productcode in (select h.productcode from helper h);