Автор Тема: Строка SQL запроса в один запрос  (Прочитано 410 раз)

18 Апрель 2016, 11:55:40
  • Старожил
  • ****
  • Сообщений: 380
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Добрый день!
Есть строка запроса.....
Запрос =
DELETE FROM ps_cart WHERE ps_cart.id_cart = ИД
DELETE FROM ps_cart_product WHERE ps_cart_product.id_cart = ИД
DELETE FROM ps_orders WHERE ps_ps_orders.id_order = ИД1
DELETE FROM ps_order_history WHERE ps_order_history.id_order = ИД1
DELETE FROM ps_order_detail WHERE ps_order_detail.id_order = ИД1;

Вопрос такой..
В данном примере каждая таблица очищается отдельно, то-есть отдельной операцией.
Вопрос Пройдет ли такой вариант одним запросом типа
 
Запрос="
DELETE FROM ps_cart,ps_cart_product,ps_orders,ps_order_history,ps_order_detail
WHERE ps_cart.id_cart = ИД AND ps_cart_product.id_cart = ИД AND ps_ps_orders.id_order = ИД1 AND ps_order_history.id_order = ИД1 AND ps_order_detail.id_order = ИД1
"

Спасибо!
18 Апрель 2016, 12:32:31
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 3419
  • Репутация: +79/-6
  • Сообщество PrestaShop
    • Просмотр профиля
Не пойдет, ид разные. Такие запросы не нужно объединять в один.
Если ты их через phpmyadmin запускаешь, то после запроса ставишь ";", все вместе вставляешь в окно sql и запускаешь.
Если через php, то в цикле в коде.
Делай так и не придумывай ничего.
18 Апрель 2016, 12:53:02
Ответ #2
  • Ветеран
  • *****
  • Сообщений: 16667
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
SQL запросы DELETE не объединяют.