Я борюсь с тем, что, как я думал, будет простым. Мне нужно удалить несколько повторяющихся строк, которые были созданы в таблице после выпуска некоторого багги-кода.mysql удалить из таблицы на основе выбора из таблицы
Запрос Я попытался это следующим образом:
delete from buzz where id IN (select distinct b1.id from buzz b1, buzz b2 where b1.id != b2.id and b1.message = b2.message);
Выбрать, безусловно, выбирает правильные идентификаторы, которые я хочу удалить, но я получаю ошибку
ERROR 1093 (HY000): Вы не может указывать целевую таблицу «buzz» для обновления в разделе FROM.
Я пробовал все разные вещи, о которых я могу думать, поэтому теперь я думаю, что я просто приближаюсь к этому неправильно.
Может кто-нибудь помочь?
Все эти решения были отличными, но это было идеально для наших нужд, поскольку было полезно оставить оригинал на месте. – mark
Хотя, я должен добавить, что вам нужно использовать «отдельный b1» или вы получите много дубликатов идентификаторов. – mark