0

2 つの csv ファイルからデータをインポートする必要があります。

2 番目のファイルに同じ SKU が含まれている場合、価格が存在する価格よりも低い場合にのみ更新する必要があります。

これが私のコードです:

$sql = mysql_query("INSERT INTO varer (sku,productname,price,mpn,stock,distributor)  

VALUES ('$sku','$productname','$price','$mpn','$stock','$distributor')"); 

上記のコードはデータを挿入するだけで問題なく動作するため、同じ SKU が存在する場合にのみ問題が発生します。

これが私がやりたいことです:

$SKUデータベースに存在し、$price がデータベースに存在する価格よりも低い場合、更新する必要があります$price, $productname, $stock,$distributor

何か提案があれば教えてください。

4

1 に答える 1

1

ドキュメントから

INSERT INTO table (a,b,c) VALUES (1,2,3),(4,5,6)
  ON DUPLICATE KEY UPDATE c=VALUES(a)+VALUES(b);

元の列はその名前で利用できるようで、挿入する値には VALUES() 関数が必要です。新旧の価格の最大値への更新は簡単なはずです: MySQL で 2 つの値の最大値を取得する方法は?

于 2012-10-03T15:11:44.313 に答える