Generalmente, cuando importamos datos a una tabla podemos llegar a tener algunos registros duplicados. El problema es como deshacernos de ellos, sin revisar uno por uno los registros o filas, que en algunos casos pueden pasar de las decenas de miles.
Con el siguiente script puede ser más sencillo (hay que adaptarlo segun la tabla):
/*******************************************************************/
/* Script para eliminar registros duplicados de tabla Empleados */
Declare @id int,
@name varchar (50),
@cnt int,
@salary numeric
Declare getallrecords cursor local static For
Select count (1), id, name, salary
from employee (nolock)
group by id, name,salary having count(1)>1
Open getallrecords
Fetch next from getallrecords into @cnt,@id,@name,@salary
--cursor para chequear los otros registros
While @@fetch_status=0
Begin
Set @cnt= @cnt-1
Set rowcount @cnt
-- eliminar los registros duplicados. Observa que todos los campos son mencionados -- en la condicion
Delete from employee where id=@id and name=@name
and salary=@salary
Set rowcount 0
Fetch next from getallrecords into @cnt,@id,@name,@salary
End
Close getallrecords
Deallocate getallrecords
*******************************************************************
Antes que todo hay que realizar una copia de seguridad, para darnos cuenta como trabaja el script. Lo recomiendo, y antes de ejecutarlo contra datos importantes, pruebalo con una tabla de prueba, no me responsabilizo por pérdida de datos importantes.
Script para eliminar registros o filas duplicadas
Etiquetas:
filas repetidas,
registros repetidos,
Sql server
Technorati tags:
filas repetidas,
registros repetidos,
Sql server
Blogalaxia tags:
filas repetidas,
registros repetidos,
Sql server
PeruBlogs tags:
filas repetidas,
registros repetidos,
Sql server
Suscribirse a:
Enviar comentarios (Atom)
Los mas leídos en este blog
- Visual Basic y Sql Server con Ado Data Control
- Sentencia Where con condicionales
- Diferencia entre Truncate y Delete
- Como hacer una consulta por fecha en Sql Server
- Programar para Pocket PC 2003: Como probar una aplicación que desarrollemos
- Backups con WinRar de Bases de Datos
- Usar teclas de función
- Auditando Tablas y Bases de Datos en Sql Server
1 comentario:
Excelente.
Muchas gracias
Publicar un comentario