#java #database #jdbc #duplicates #derby
#java #База данных #jdbc #дубликаты #дерби
Вопрос:
Каков наилучший способ поиска и удаления дублированных или похожих записей в базе данных?
Подобное означает то же самое в некоторых столбцах базы данных
Сейчас я делаю это с помощью 1 for_loop для текущих строк базы данных / таблицы, 1 for_loop для строк базы данных от текущей до последней, 1 for_loop для столбцов базы данных и, наконец, переключателя для типа столбца. Что занимает несколько минут
Комментарии:
1. Невозможно ответить без уточнения, что означает «дублированный или аналогичный».
2. привет @chrylis я сказал, что я подразумеваю под подобным. Я имею в виду, что 2 записи должны быть одинаковыми в некоторых столбцах базы данных. и дублировать означает, что эти 2 записи должны быть одинаковыми во всех столбцах.
Ответ №1:
рассматривали ли вы сортировку (по нужным столбцам)…и после этого открываем курсор и удаляем похожие ресурсы.
Комментарии:
1. привет @RAHUL-ROY ; Я пытался. проблема здесь в том, что результирующий набор , созданный из SQL, содержащий
order by
слова, автоматически становится недоступным для обновления.2. дорогой @RAHUL я проделывал подобную вещь в другом месте, я создал дополнительный столбец в виде строки с номером2 и я создал
order by
sql … затем создал массив дубликатов на основе этой строки с номером 2 … наконец, еще один sql безorder by
и обновите его из созданного массива… но, как вы видите, это непростой способ … а также получить время (как у меня, так и у компьютера! 🙂 )3. Привет @mhjstackoverflow: Если вы можете добавить столбец в базу данных, то это намного проще ….. добавьте еще один столбец (скажем, приращение значения идентификатора строки) прямо сейчас. запустите belwo sql. удалите из таблицы, в которой отсутствует row_id (выберите uniq row_id из таблицы a, таблица b где(условие для similiaritylike a.X=b.X anda.Y = b.Y ) ) Пожалуйста, дайте мне знать, если у вас возникнут какие-либо проблемы в этом.
4. привет, я не знаю. Я поставил стрелку вверх, но причина, по которой у меня меньше репутации, скрыта. еще раз спасибо. (я работаю над вашим кодом)
5. Спасибо, что выбрали в качестве ответа.