我需要从两个csv文件导入数据。
如果第二个文件包含相同的sku,则只有在价格低于价格时才应更新。
这是我的代码:
$sql = mysql_query("INSERT INTO varer (sku,productname,price,mpn,stock,distributor)
VALUES ('$sku','$productname','$price','$mpn','$stock','$distributor')");
上面的代码可以正常插入数据,所以只有在相同的sku存在时才会出现问题。
这是我想要做的:
如果数据库中存在$SKU
并且$pric
e低于数据库中存在的价格,则应更新$price
,$productname
,$stock
,{{1 }}
如果您有任何建议,请与我们联系。
答案 0 :(得分:1)
来自docs
INSERT INTO table (a,b,c) VALUES (1,2,3),(4,5,6)
ON DUPLICATE KEY UPDATE c=VALUES(a)+VALUES(b);
似乎原始列在其名称下可用,并且要插入的值需要VALUES()函数。更新到新旧价格的最大值应该很简单:How to get the max of two values in MySQL?