Existe alguna funcion que me retorne un "NOT DISTINCT()" ??
O sea que me devuelva solo los registros repetidos
| |||
hay una manera de hacer una consulta que te busque los registro duplicados la sentencia es la siguiente: Select * from tabla where campo que tiene duplicados in o en otros casos = (select campo de la condicion from misma tabla pero esta vez con un alias group by que es donde agrupas el o los campos duplicados having count(*)>1 and tabla sin el alias.campo del 2º select = tabla con el alias.mismo nombre del campo) order by campo Explicado de esta forma es complicado pero este ejemplo busca los datos duplicados de un solo campo, si lo que tienes que buscar son mas de un campo duplicado en los registro de la tabla solo tienes que agregarlo en el group by. Ten presente que no existe la condicion where en el segundo select. Espero haber servido de algo. Si no me explique bien me serviria de algo un ejemplo asi lo hacemos juntos Saludos |
| |||
Es: select * from xlista_x where email in (select email from xlista_x as x group by email having count(*)>1 and xlista_x.email=x.email) order by email Supomgamos que ademas del mail duplicado queres saber si tambien el nombre es asi select * from xlista_x where email in (select email from xlista_x as x group by email,nombre having count(*)>1 and xlista_x.email=x.email and xlista_x.nombre=x.nombre) order by email Es decir cuando mas campos sean los duplicados tendran que ir en el group by y en el having. Ten en cuenta que esta consulta puede demorar bastante Decime si funciono |
| |||
Es cierto pero te falto el group by y ademas creo que para este caso el tiene que ver cuales son los registro duplicado y con tu ejemplo muesta que ese registro esta duplicado. Es decir muestra uno de los dos. Saludos |
| |||
ok efectivamente el ejemplo que puse solo muestra un registro, pense que esa era la idea, pero si queires que te devuelva todos los registros repetidos es igual solo haces en in y ocupas eso como subquery asi: SELECT * FROM xlista_x WHERE email IN (SELECT email FROM xlista_x HAVING COUNT(email) >1 ) y segun yo no es necesario el group by,pero, corrigeme nacho_99i |