Множественный update

Тема в разделе "Базы Данных", создана пользователем Den1a, 29 июн 2017.

  1. Den1a

    Den1a

    Регистрация:
    16 авг 2013
    Сообщения:
    55
    Симпатии:
    3
    Здравствуйте.

    Часто обновляю остатки товара ИЗ торговой базы НА сайт.

    Запросы такого вида:
    update oc_product set `quantity`='17' where product_id='39414';
    update oc_product set `quantity`='20' where product_id='38378';
    update oc_product set `quantity`='' where product_id='38747';
    update oc_product set `quantity`='27' where product_id='39075';

    В файле 30к таких строк.

    Есть ли способ объединить данные в один запрос и тем самым ускорить его.
    Обновление каждые 30 мин.

    Заранее благодарен!
     
  2. settr

    settr

    Регистрация:
    12 окт 2016
    Сообщения:
    67
    Симпатии:
    54
    Вам нужен INSERT ... ON DUPLICATE KEY UPDATE
    В вашем случае:
    Код:
    INSERT INTO oc_product  (product_id,quantity) VALUES (39414,17),(38378',20),(38747,0),(39075,27)
    ON DUPLICATE KEY UPDATE quantity=VALUES(quantity);
     
    Den1a и $iD нравится это.