写一条UPDATE语句,修改Categories表中的drums类别。该语句应该将category_name列更改为"Woodwinds",并且应该使用category_id来标识行。
执行
UPDATE categories
SET
category_name = 'Woodwinds'
WHERE
category_id = (select category_id from categories where category_name='drums');
我得到这个错误:错误代码:1093。你不能在FROM子句中指定更新的目标表'categories'。
我已经提到了一个类似的帖子,但不能修复它。如果有人能帮忙,我将不胜感激。谢谢!
set @category_ids = (select GROUP_CONCAT(category_id) from categories where category_name='drums' GROUP BY category_name);
UPDATE categories
SET
category_name = 'Woodwinds'
WHERE
FIND_IN_SET(category_id, @category_ids)