1

mysql データベースのテーブルを更新しようとしていますが、構文エラーが発生します。それが重要な場合、それは MyISAM テーブルです。

ここにSQLがあります

UPDATE product SET price=(price*1.0909)
JOIN product_to_category ON product.product_id = product_to_category.product_id
WHERE category_id =6
OR category_id =1
OR category_id =2

私の目標は、3 つの特定のカテゴリ (*product_to_category* テーブルからの情報) から製品のリストを取得し、価格を約 10% 引き上げることです。価格は商品表に記載しております。

ドキュメントで見たものから、 update ステートメントで join を使用でき、過去に同様のクエリを実行しました。

これは、現在約40,000の製品を持つ制作Webサイトです。必要に応じて、製品をループして 1 つずつ実行する php スクリプトを実行できますが、mysql から直接実行できるはずです。

4

1 に答える 1

1

あなたの発言は少し間違っています。句の一部のSET後に続きます。JOINUPDATE

UPDATE product 
       JOIN product_to_category 
           ON product.product_id = product_to_category.product_id
SET    price = price * 1.0909
WHERE  category_id IN (1,2,6)
于 2013-09-29T00:00:52.617 に答える