eliminar duplicidad de registros

04/07/2006 - 18:05 por Erick Sanchez | Informe spam
saludos
de que manera por medio de querys sql puedo eliminar registros que esten
dupplicados. Tambien quisiera hacer un select para ver cuales son los que
estan duplicados?

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
04/07/2006 - 19:27 | Informe spam
Erick,

Depende de la estructura de la tabla con la que trabajas y la cantidad de
columnas por las cuales consideras la duplicidad. Aca te paso un ejemplo y un
articulo sobre el tema.

Ejemplo:

create table t1 (
c1 varchar(25) not null,
c2 varchar(25) not null
)
go

insert into t1 values('SQL Server', '2000')
insert into t1 values('SQL Server', '2005')'
insert into t1 values('SQL Server', '2005')'
go

alter table t1
add pk int not null identity(1, 1)
go

alter table t1
add constraint uq_t1_pk unique(pk)
go

selct c1, c2
from t1
group by c1, c2
having count(*) > 1

select *
from t1
where exists(
select *
from t1 as t2
where t2.pk != t1.pk
and t2.c1 = t1.c1
and t2.c2 = t1.c2
)
go

delete t1
where exists(
select *
from t1 as t2
where t2.pk != t1.pk
and t2.c1 = t1.c1
and t2.c2 = t1.c2
)
go

alter table t1
drop constraint uq_t1_c1
go

alter table t1
drop column pk
go

select *
from t1
go

drop table t1
go

How to remove duplicate rows from a table in SQL Server
http://support.microsoft.com/defaul...-us;139444


AMB

"Erick Sanchez" wrote:

saludos
de que manera por medio de querys sql puedo eliminar registros que esten
dupplicados. Tambien quisiera hacer un select para ver cuales son los que
estan duplicados?




email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida