Hola invitado         02 Sep, 2010 - 04:32
Menú principal
 
Ads
 
Patrocinadores
 
Anuncios
 
© 2009 PortalFox
Buscar registros repetidos lecturas 11143
 Enviado por Luis María Guayán en Jueves, 30 Marzo, 2006
Bases de Datos ¿Quien no tuvo la tarea de buscar registros repetidos en una tabla de Visual FoxPro?...

Una forma de saber si tenemos registros repetidos en nuestras tablas es utilizar una sentencia SELECT con las cláusulas GROUP BY y HAVING como la siguiente:

OPEN DATABASE (HOME(2) + "Northwind\Northwind")
SELECT TerritoryDescription, ;
COUNT(*) AS Repetido ;
FROM Territories ;
GROUP BY TerritoryDescription ;
HAVING Repetido > 1


El resultado de esta consulta nos muestra si existen registros repetidos y la cantidad de veces que se repiten.

Pero hay veces que necesitamos saber exactamente que registros están repetidos, para ello podemos utilizar algunas de las siguientes sentencias SELECT:

1)
OPEN DATABASE (HOME(2) + "Northwind\Northwind")
SELECT * ;
FROM Territories ;
WHERE TerritoryDescription IN ;
(SELECT TerritoryDescription ;
FROM Territories ;
GROUP BY TerritoryDescription ;
HAVING COUNT(*) > 1)

2)
OPEN DATABASE (HOME(2) + "Northwind\Northwind")
SELECT * ;
FROM Territories T1;
WHERE EXISTS ;
(SELECT * ;
FROM Territories T2 ;
WHERE T1.TerritoryDescription = T2.TerritoryDescription ;
GROUP BY T2.TerritoryDescription ;
HAVING COUNT(*) > 1)

Nota: Las pruebas estan realizadas con la tabla "Territories" de la base de datos "Northwind" que viene en los ejemplos de VFP8 y superior.
 Versión imprimible  
Buscar registros repetidos | Entrar/Crear una cuenta | 0 Comentarios
Los comentarios son propiedad de sus respectivos autores.
No somos responsables de su contenido.



Todas las marcas y los logos utilizados en este sitio son propiedad de sus respectivos dueños.
Los artículos, noticias y comentarios son propiedad y responsabilidad de sus respectivos autores.
Copyright © 2000-2010 PortalFox. Todos los derechos reservados.