![]() |
borrrar registros repetidos
ante todo buenas noches, tengo el siguiente problema, tengo una base de datos, con un campo ID y varios mas, el campo ID no es clave principal ni autoincremental, es solo un campo numerico, ej
ID apellido campo2 1 perez a 2 alvarez b 1 smith c 3 calco d como tendria que hacer para borrar los id repetidos, sin importar cual de los registros me queda, pero si que quede uno, la base de datos de prueba se llama "base", la verdad busque informacion casi todo el dia y la verdad no hay mucho al respecto. desde ya les agradezco hugo |
Hola
Me imagino que hay que hacer una sentencia sql. De ahi buscar por medio del campo ID. De ahi hacer un record count para definir si hay mas de uno de ese mismo ID. De ahi (yo) guardaria la informacion de uno de ellos en unas variable. De ahi borraria todos y guardaria el que me interese. Otra forma es recorrer manualmente la tabla y borrarlos uno a uno. Saludos |
gracias caral
|
sigo buscando a full con el google y todavia nada
hugo |
Yo creo que podría ser algo así, sino que alguien me corrija, en una tabla que se llama artículos y el campo que podría repetir es Ref
Un saludo. |
desde ya muchas gracias por contestar, no me funciono,
DELETE * FROM base WHERE base.id IN (SELECT DISTINCTROW base.id FROM base WHERE (((base.id) In (SELECT [id] FROM [base] As Tmp GROUP BY [id] HAVING Count(*)>1 ))) ORDER BY base.id) lo adapte a mi base de datos y campos y no funciono, pero desde ya agradezco tu atencion hugo |
Suponiendo que: Tabla es el nombre de la tabla, Campo_ID el campo clave y CampoX el que puede repetirse, yo haría:
Saludos. |
me estoy volviendo loco, les comento
DELETE FROM base WHERE base.id IN (SELECT DISTINCTROW base.id FROM base WHERE (((base.id) In (SELECT [id] FROM [base] As Tmp GROUP BY [id] HAVING Count(*)>1 ))) ORDER BY base.id) esto en access funciono, contra sqlserver (microsoft V7) no funciona, si alquien puede saber algo les encargo gracias hugo |
parece que a nadie se le ocurre algo, que lio para mi, juas
gracias hugo |
Hola
En access los corchetes [ ] funcionan en otras BD no. Tambien pasa lo mismo con el HAVING y el DISTINCTROW. Tal vez: Saludos |
no funciono, pero desde ya te agradezco que contestes un domingo
hugo |
Cita:
// Saludos |
La franja horaria es GMT +2. Ahora son las 08:06:53. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi