Разбираем решение задачи по SQL с нашего телеграмм-канала про поиск и удаление дублей в таблице
Поиск дубликатов в MySQL/MariaDB
В этой статье я объясню, как найти дубликаты в MySQL/MariaDB. Дублирующие записи могут появляться из-за неправильной структуры базы данных. Вы должны использовать индекс UNIQUE, чтобы предотвратить добавление повторяющихся записей...
8️⃣ Приемов очистки данных в SQL 1. Выявление и удаление дублирующих записей SELECT DISTINCT column1, column2, ... FROM table_name; В качестве альтернативы можно использовать GROUP BY, чтобы сгруппировать похожие записи вместе, а затем удалить количество записей в каждой группе. SELECT column_name, COUNT(*) FROM table_name GROUP BY column_name HAVING COUNT(*) > 1; 2. Стандартизация текстовых полей UPDATE table_name SET column_name = UPPER(column_name); Вы также можете использовать функцию REPLACE для замены определенных символов или строк в текстовых полях. Например: UPDATE table_name SET column_name = REPLACE(column_name, 'OldString', 'NewString'); 3. Обработка отсутствующих или нулевых значений SELECT column1, column2, ... FROM table_name WHERE column_name IS NULL; Затем вы можете удалить эти записи или заменить отсутствующие значения значением по умолчанию. Например: UPDATE table_name SET column_name = 'DefaultValue' WHERE column_name IS NULL; 4. Удаление кривых символов UPDATE table_name SET column_name = REPLACE(column_name, 'InvalidChar', ''); UPDATE table_name SET column_name = REGEXP_REPLACE(column_name, '[^a-zA-Z0–9 ]', ''); 5. Обработка выбросов Чтобы определить и удалить выбросов, мы можем использовать функции AVG и STDDEV для расчета среднего и стандартного отклонения столбца. SELECT AVG(column_name), STDDEV(column_name) FROM table_name; 6. Корректировка форматов дат Функция STR_TO_DATE может преобразовать строку в формат даты. Синтаксис функции следующий: SELECT STR_TO_DATE(date_string, format_string) FROM table_name; 7. Очистка текстовых данных Функция REPLACE может заменить подстроку в строке. Функция TRIM позволяет удалить из строки ведущие и последующие пробелы. Синтаксис выглядит следующим образом: SELECT UPPER(column_name) FROM table_name; SELECT REPLACE(column_name, 'old_string', 'new_string') FROM table_name; SELECT TRIM(column_name) FROM table_name; 8. Проверка типов данных Важно убедиться, что ваши данные имеют правильный тип данных. Для проверки и преобразования типов данных можно использовать функции CAST или CONVERT. Например: SELECT CAST(column_name AS INT) FROM table_name; SELECT CONVERT(column_name, DATE) FROM table_name; @machinelearning