Обновление таблицы с помощью подзапроса - PullRequest
1 голос
/ 26 апреля 2019

Я пытаюсь обновить таблицу MySQL и получаю сообщение о том, что «вы не можете использовать заголовки таблиц назначения» для обновления в предложении FROM.

Это мое утверждение ОБНОВЛЕНИЕ:

UPDATE titles
SET sales = sales * 0.5
WHERE sales > (SELECT AVG(sales) FROM titles);

Я ожидаю, что средние продажи вырастут на 0,5 ОТ названий.

1 Ответ

1 голос
/ 26 апреля 2019

попробуйте использовать объединение с помощью подзапроса

UPDATE titles t1
INNER JOIN (
  SELECT AVG(sales) my_avg 
  FROM titles
) t2  on t1.sales > t2.my_avg
SET sales = sales * 0.5
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...