Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Удаление дублей записей / 9 сообщений из 9, страница 1 из 1
09.07.2002, 15:19:01
    #32035803
IgorK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление дублей записей
Хайствуйте!
Вопросик - как можно удалить дублирующиеся по нескольким полям записи, не все - одну хочется оставить!
...
Рейтинг: 0 / 0
09.07.2002, 15:41:57
    #32035806
Rom
Rom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление дублей записей
Код: plaintext
1.
2.
3.
delete tn
from TableName tn
group by col1, .... , colN
having count(*)> 1 
...
Рейтинг: 0 / 0
09.07.2002, 15:44:17
    #32035807
Rom
Rom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление дублей записей
нет, вру
...
Рейтинг: 0 / 0
09.07.2002, 17:04:45
    #32035835
Rom
Rom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление дублей записей
если в таблице есть ключ, то примерно так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
drop table #Tmp 
go
create table #Tmp (id int identity( 1 , 1 ), col int)
insert into #Tmp values( 2 )
insert into #Tmp values( 1 )
insert into #Tmp values( 2 )
insert into #Tmp values( 2 )
insert into #Tmp values( 3 )
delete t1
from #Tmp t1
where  1  < (select count(*) from #Tmp t2 where t1.col = t2.col and t1.id >= t2.id)
select * from #Tmp
...
Рейтинг: 0 / 0
09.07.2002, 17:22:01
    #32035841
Genady
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление дублей записей
Цитата из SergSuper

delete t1 from table t1
inner join table t2 on t1.ID > t2.ID and t1.field1 = t2.field1 and t1.field2 = t2.field2...

ID - это ключ, без него, конечно работать не будет и он необязательно должен быть int.
...
Рейтинг: 0 / 0
09.07.2002, 17:28:21
    #32035843
VVG_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление дублей записей
Ну а если ключа нет, тогда только select distinct * во временную таблицу, удалить все и закачать обратно.
...
Рейтинг: 0 / 0
11.07.2002, 11:09:15
    #32036167
Maxx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление дублей записей
Всем привет
Понимая что вопрос неоднократно поднимался но все таки...
что подскажите если не один из приеров кода не срабатывает,таблица без ключевого поля(временная),и никаким образом не удаеться избавиться от дублей:(
Подкиньте идею плз.
Спасибо
...
Рейтинг: 0 / 0
11.07.2002, 11:09:21
    #32036168
Maxx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление дублей записей
Всем привет
Понимая что вопрос неоднократно поднимался но все таки...
что подскажите если не один из приеров кода не срабатывает,таблица без ключевого поля(временная),и никаким образом не удаеться избавиться от дублей:(
Подкиньте идею плз.
Спасибо
...
Рейтинг: 0 / 0
11.07.2002, 11:12:06
    #32036170
Genady
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление дублей записей
Подкидываю идею - ввести все же в этой таблице ключ, если нет естественного, пусть будет хотя бы суррогатный, например identity.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Удаление дублей записей / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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