Este alzheimer........

| ||||
![]() Precisamente: SELECT DISTINCT campo1, campo2, campon FROM tabla WHERE condición Salu2,
__________________ "El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera." -- Ernest Hemingway |
| ||||
Con la de dazuaga me funciono bien. Sin embargo con la otra no me sirvio porque tengo que establecer un criterio, en caso contrario me devuelve todos los valores no me hace nada el distinct. Existe alguna forma de decirle algo asi: SELECT DISTINCT * FROM tabla WHERE condición=¿any? o ¿all? |
| ||||
![]() Tienes razón acabo de probar y solo lo hace filtrando un campo a la vez...de lo contrario no hace el distinct Tengo una tabla con pais_id, pais_name SELECT DISTINCT pais_name FROM paises WHERE pais_name <> 'mexico' Sin embargo si quiero traer pais_nombre, pais_id me devuelve todo..! Salu2,
__________________ "El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera." -- Ernest Hemingway |
| ||||
igual y no soy un experto en sentencias SQL, pero creo que te devuelve toodos los registros porque tenés, por lo menos, un campo que no se repite nunca (un ID?) Si el resultado de la consulta es sólo buscar duplicado en determinado campo, mi método funciona y el del DISTINCT también. Pero olvidate del uso del "*". Sólo debés incluir los campos que tienen duplicados ... si es que no me equiboco ![]() |
| |||
Lo que pasa es que el DISTINCT te regresa los valores diferentes y ya con que te varie un campo ya valió, por ejemplo: paisID paisNombre 1 Mexico 2 Estados Unidos 3 El Congo 4 Mexico si uso: Select DISTINCT * from paises where paisNombre="Mexico" el resultado es: paisID paisNombre 1 Mexico 4 Mexico dependiendo de lo que quieres filtrar tal vez puedas usar un join... SALUDOS!!! |
| ||||
Cita: Efectivamente, solo funcionaria sobre una campo cuyos valores estuvieran ordenados y no se repitieran alternos, del mismo modo si hay espacios en blanco tampoco lo contara bien. Lo que pasa es que el DISTINCT te regresa los valores diferentes y ya con que te varie un campo ya valió |
| |||
Respuesta: recoger los registros en una SQL sin duplicados Cita: Lo que tienes que hacer es filtrar primero el campo que se repite y luego con esa información traes el resto.
Iniciado por u_goldman ![]() ![]() Tienes razón acabo de probar y solo lo hace filtrando un campo a la vez...de lo contrario no hace el distinct Tengo una tabla con pais_id, pais_name SELECT DISTINCT pais_name FROM paises WHERE pais_name <> 'mexico' Sin embargo si quiero traer pais_nombre, pais_id me devuelve todo..! Salu2, select a.* from (SELECT DISTINCT pais_id FROM paises WHERE pais_name <> 'mexico') x inner join paises a on a.pais_id = x.pais_id |
| ||||
Respuesta: recoger los registros en una SQL sin duplicados Je je je, espero que 6 años después maestro haya dado con la solución. Procedo a cerrar el tema, ya que no tiene caso seguir el hilo.
__________________ "El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera." -- Ernest Hemingway |