我得到了以下mysql查询..我尝试了很多不同的格式,但似乎无法让这个工作。 我有两张桌子。 table mic.temp有三列,而table products有不少。
我需要将值更新为表mic.temp中的表产品。匹配列是型号。
我编写了以下查询,但它更新了所有字段。我只需要更新临时表中的值,并自动增加产品表。如果找不到值,则插入它。我不介意如果临时表中不存在的值输入为null。
mysql_query('INSERT INTO products(products_id, products_quantity, products_model, products_ean, products_image, products_price, products_date_added, products_last_modified, products_date_available, products_weight, products_status, products_tax_class_id, manufacturers_id, products_ordered, products_last_import, icecat_prodid, vendors_id, products_availability)
SELECT model, stock, price
FROM mic_temp
ON DUPLICATE KEY UPDATE set
products.products_quantity = mic_temp.stock,
products.products_price= mic_temp.price');
答案 0 :(得分:0)
检查一下:
Update products join mic_temp on products.modelnumber=mic_temp.modelnumber set
products.product_quantity=mic_temp.stock, products.product_price=mic_temp.price;
指定要在产品表中插入或更新的所有mic_temp列 设定声明。