Перейти к содержанию
Tipusha

Массово присвоить товары одной категории к другой категории (или подкатегории)

Рекомендуемые сообщения

Есть категория с id=98 допустим. Мне нужно присвоить ВСЕ товары этой категории к категориям с id=152, id=153 и т.д но при этом главная категория должна остаться всё равно "98". Я так понимаю через SQL легко можно, подскажете как ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты


CREATE TEMPORARY TABLE oc_product_to_category_2 (product_id INT UNSIGNED, category_id INT UNSIGNED);

INSERT INTO oc_product_to_category_2 (product_id, category_id)

SELECT product_id, 152 FROM oc_product_to_category WHERE category_id = 98;

INSERT INTO oc_product_to_category_2 (product_id, category_id)

SELECT product_id, 153 FROM oc_product_to_category WHERE category_id = 98;

INSERT IGNORE INTO oc_product_to_category (product_id, category_id)

SELECT product_id, category_id FROM oc_product_to_category_2;

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

и в конце

DROP TABLE oc_product_to_category_2

А нафиг она потом нужна :)

Но это пустяк )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Она временная, сама умрет

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
CREATE TEMPORARY TABLE oc_product_to_category_2 (product_id INT UNSIGNED, category_id INT UNSIGNED);

INSERT INTO oc_product_to_category_2 (product_id, category_id)
SELECT product_id, 152 FROM oc_product_to_category WHERE category_id = 98;

DELETE FROM oc_product_to_category WHERE category_id = 152
AND product_id in (SELECT product_id FROM oc_product_to_category_2);

INSERT INTO oc_product_to_category (product_id, category_id)
SELECT product_id, category_id FROM oc_product_to_category_2;

TRUNCATE oc_product_to_category_2;

Повторить для второй

Как еще один вариант

не люблю я ignore

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.