Select

06/09/2004 - 17:37 por Rodin | Informe spam
Buenos días,

Tengo una tabla en SQL Server 2000, esta compuesta por dos
campos Cod1 y Cod1, cuando voy colocarlas como claves
primarias (Clave Compuesta), no me lo permite, porque ya
existe una combinación repetida de esta clave, como puedo
hacer una consulta que me permita ver los registros
repetidos, para eliminarlos, y así poder colocar la clave
primaria.

Att: Rodin
 

Leer las respuestas

#1 qwalgrande
06/09/2004 - 18:03 | Informe spam
Hola.

Supongo que los campos serán Cod1 y Cod2. En ese caso, prueba con una cosa
así:

select Cod1, Cod2, count(Cod1)
from Tabla group by Cod1, Cod2 having count(Cod1) > 1

Para luego el delete de los duplicados, si los registros están duplicados y
los registros son indistinguibles, tendrás que indicar un rowcount 1 para que
no te borre las dos filas (si no sólo una de ellas).

set rowcount 1
delete tabla where cod1 = 'valor1' and cod2 = 'valor2'

qwalgrande

"Rodin" wrote:

Buenos días,

Tengo una tabla en SQL Server 2000, esta compuesta por dos
campos Cod1 y Cod1, cuando voy colocarlas como claves
primarias (Clave Compuesta), no me lo permite, porque ya
existe una combinación repetida de esta clave, como puedo
hacer una consulta que me permita ver los registros
repetidos, para eliminarlos, y así poder colocar la clave
primaria.

Att: Rodin

Preguntas similares