Задать вопрос
@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.
Поэтому вопрос, как переделать запрос?
  • Вопрос задан
  • 309 просмотров
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • Нетология
    Продвинутый SQL
    5 недель
    Далее
  • Яндекс Практикум
    SQL для разработки
    4 месяца
    Далее
  • Академия Eduson
    SQL-разработчик: тариф Базовый
    3 месяца
    Далее
Решения вопроса 1
@aljo222 Автор вопроса
В процессе обучения веб-разработке
Вопрос решен, оказалось у этих страниц uri начинается с catalog/, поэтому
UPDATE `modx_site_content`
SET `template`=5
WHERE `uri` LIKE 'catalog/%' AND `class_key`="msProduct"
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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