powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Удаление строк с одинаковыми данными лишь в некоторых столбцах.
5 сообщений из 5, страница 1 из 1
Удаление строк с одинаковыми данными лишь в некоторых столбцах.
    #38793910
Serzh007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хочу сделать составной уникальный индекс из двух столбцов, но есть дубликаты. Айди у строк разные. Как удалить строки, у которых дубликаты в этих столбцах, оставив одну строку для составного индекса?
...
Рейтинг: 0 / 0
Удаление строк с одинаковыми данными лишь в некоторых столбцах.
    #38793913
Фотография javajdbc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrejk,


какое правило выбора из двух одинаковых записей?
...
Рейтинг: 0 / 0
Удаление строк с одинаковыми данными лишь в некоторых столбцах.
    #38793942
Serzh007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javajdbcandrejk,


какое правило выбора из двух одинаковых записей?
В принципе, можно любую оставлять. Можно сориентироваться на велтичину индекса и удалить более позднюю.
...
Рейтинг: 0 / 0
Удаление строк с одинаковыми данными лишь в некоторых столбцах.
    #38793950
Фотография javajdbc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrejkjavajdbcandrejk,


какое правило выбора из двух одинаковых записей?
В принципе, можно любую оставлять. Можно сориентироваться на велтичину индекса и удалить более позднюю.


Тогда прочитайте ФАК "Выборка первой-последней записи".

Что б было проше, лучше сделать промежуточную таблицу
куда вначала сложить все ИД которые надо удалить,
проверить правильность выборки а потом уже и физически удалить.


Примерно так:

1.
create tbl_tmp as
select t1.id
from tabl t1
where exists
(select 1 from tabl t2
where t1.col1 = t2.col1
and t1.col2=t2.col2
and t1.id > t2.id)

2
проверить

3.
удалить

delete from tabl
where id in (select id from tabl_temp)
...
Рейтинг: 0 / 0
Удаление строк с одинаковыми данными лишь в некоторых столбцах.
    #38793993
Serzh007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А если так?
Код: sql
1.
2.
select * FROM `k-t_s` t1, `k-t_s` t2
WHERE t1.`id_n`=t2.`id_n` AND t1.`id_s`=t2.`id_s` AND t1.`id_sv` > t2.`id_sv`
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Удаление строк с одинаковыми данными лишь в некоторых столбцах.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]