在MySQL中,在一个查询中更新多个表

时间:2017-01-08 17:49:51

标签: mysql sql-update

我想从csv更新我的表格。现在来自csv的数据被导入表" temp_update_stany",但我无法更新表。查询没有错误,但没有更新。

CSV表格是:

produkt|quantity|price|active|czas

查询:

UPDATE lp2_product tabela 
        INNER JOIN lp2_stock_available stany ON (tabela.id_product = stany.id_product)
        INNER JOIN lp2_product_lang lang ON (tabela.id_product = lang.id_product)
        INNER JOIN temp_update_stany csv ON (tabela.id_product = csv.produkt)
    SET
        tabela.active = csv.active,
        tabela.price = csv.price,
        lang.available_now = csv.czas,
        stany.quantity = csv.quantity
    WHERE
        csv.produkt = tabela.id_product 
        OR csv.produkt = lang.id_product 
        OR csv.produkt = stany.id_product

并从查询输出:

Modified records: 0 (Perform queries took 0.0322 seconds (s)).

但是例如" lp2_product" / row' active'所有产品的值都为0,而temp_update_stany的值为1。

是的,这是用于更新数量和价格的prestashop和简单脚本。

1 个答案:

答案 0 :(得分:0)

根据上述评论,如果没有净变化,UPDATE会报告零行受影响。因此,如果表格已经使用所需的值进行了更新,则UPDATE是一个无操作,并且没有任何行受到影响。"