@aljo222
В процессе обучения веб-разработке

Как вставить SELECT в UPDATE?

Здравствуйте!
Пытался сделать запрос к БД. чтобы на сайте у некоторых страниц изменить шаблон.
UPDATE `modx_site_content` set `template`=5
WHERE `parent` in (SELECT id FROM `modx_site_content` WHERE `parent`=5 AND `template`=6) AND `class_key`="msProduct"

Но запрос выдает ошибку:
You can't specify target table 'modx_site_content' for update in FROM clause

Оказалось нельзя использовать SELECT внутри UPDATE.
Поэтому вопрос, как переделать запрос?
  • Вопрос задан
  • 294 просмотра
Решения вопроса 1
@aljo222 Автор вопроса
В процессе обучения веб-разработке
Вопрос решен, оказалось у этих страниц uri начинается с catalog/, поэтому
UPDATE `modx_site_content`
SET `template`=5
WHERE `uri` LIKE 'catalog/%' AND `class_key`="msProduct"
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы