Удалить несколько строк в MySql без CTE - PullRequest
0 голосов
/ 24 января 2020

У меня есть база данных с около 7000 автомобилей, но, к сожалению, только около 1000 являются уникальными. Можно ли удалить все дублированные строки?

Схема выглядит следующим образом:

this:

Спасибо!

1 Ответ

1 голос
/ 24 января 2020

Вот один из способов сделать это:

delete t1
from mytable t1
inner join mytable t2
    on  t2.brand = t1.brand
    and t2.model = t1.model
    and t2.id < t1.id

Это удалит дубликаты на (brand, model) при сохранении одного с наименьшим идентификатором.

...