vadimushka_d
@vadimushka_d
Учусь на программиста

Как найти дубликаты на основе первого значения в таблице Mysql?

Имеется таблица городов, где в разном наименовании записаны названия, пример
  • Лосино-Петровский
  • Лосино-Петровский городской округ
  • г. Лосино-Петровский


Например строка Лосино-Петровский она записана правильно, так вот как мне найти дубликаты на основе это строки? Сам пытал google но то ли я неправильно запрос заполнял то ли запросов sql не поможет? нужно через код все делать?

Такой запрос не прокатывает

SELECT * FROM localities as Locality WHERE title IS NOT NULL GROUP BY Locality.title HAVING COUNT(*) > 1 LIMIT 0,100
  • Вопрос задан
  • 60 просмотров
Решения вопроса 1
@asmodeusta
PHP Developer (Laravel, Wordpress)
select 
Locality.*,
Doubles.title as double_title
from localities as Locality
left join localities as Doubles
on Doubles.title like concat('%', Locality.title, '%') and not Doubles.id = Locality.id

Запрос тяжелый, но выведет сразу все дубли
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
NikitOS_MV
@NikitOS_MV
Король шутов
Не это случаем? Тык
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы