0

我得到了以下 mysql 查询..我尝试了许多不同的格式,但似乎无法让它工作。我有两张桌子。table mic.temp 有三列,而 table products 有很多。

我需要从表 mic.temp 将值更新到表产品中。匹配的列是型号。

我编写了以下查询,但它更新了所有字段。我只需要更新临时表中找到的值并自动递增产品表。如果找不到值,则插入它。如果不存在,我不介意临时表中的值输入为空。

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');
4

1 回答 1

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;

在 set 语句下指定要在 products 表中插入或更新的 mic_temp 的所有列。

于 2013-08-23T11:51:40.667 回答