Sc0undRel
@Sc0undRel

Как удалить повторяющиеся записи в SQL?

У меня такая проблема.
В MySQL базе имеются повторяющиеся строки - смотрите на скрине 003.ee
Одна запись от другой отличается тем, что в перой откудато при импорте взялся пробел или перенос на другую строку.. ну какойто невидимый символ.

Как мне удалить все невидимые символы, а затем удалить все повторяющиеся в 1 столбике записи?

5cdd5bbdde553277383639.png
  • Вопрос задан
  • 591 просмотр
Решения вопроса 1
@tabbols95
Недопрограммист
CREATE TABLE `table_tmp` SELECT DISTINCT * FROM `table`;
DROP TABLE `table`;
RENAME TABLE `table_tmp` TO `table`;
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@Rognoroc
Email software developer
Одна запись от другой отличается тем, что в перой откудато при импорте взялся пробел или перенос на другую строку.. ну какойто невидимый символ.


У вас записи отличаются еще как минимум 2 полями status и data_added, не считая id.
а что касается удаления невидимых символов то как то так:
UPDATE yourTable SET domain= TRIM(REPLACE(REPLACE(REPLACE(domain, ‘\n’, ‘ ‘), ‘\r’, ‘ ‘), ‘\t’, ‘ ‘));
Ответ написан
Комментировать
@Zubekas
Distinct не подойдёт, т к он фильтранет когда все столбцы записи будут идентичны (на скрине это не так), group by тогда уж по domain, либо с district вложеный запрос...
CREATE TABLE `table_tmp` SELECT * FROM `table` where domain in(select distinct domain from table)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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