qnixdev
@qnixdev
Junior+ PHP Developer (Symfony)

Как составить запрос на удаление дублей?

таблица:
ID         country_id         name
83649      21                 Aek Nauli
49279      53                 AElmhult
49280      53                 AElmhult
48976      53                 AElvdalen
72357      53                 AElvkarleby
72359      53                 AElvkarleby
...


Как составить запрос на удаление дублей с учетом, что в разных странах могут быть города с одинаковыми названиями?
  • Вопрос задан
  • 196 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Так же, как и без учёта стран, только с учётом стран.
DELETE `t2`.*
  FROM `table` AS `t1`
  JOIN `table` AS `t2` ON `t2`.`name` = `t1`.`name`
    AND `t2`.`country_id` = `t1`.`country_id`
    AND `t2`.`ID` > `t1`.`ID`
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
al_gon
@al_gon
Если есть проблема дублей нужна таблица с уникальными ключами.
Создаётся таблица идентичаня той что в вопросе, перебрасываются данные через INSERT INGNORE.
После переименнования можно использовать.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы