Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

SELECT DISTINCT
Ir a página 1, 2  Siguiente
 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Bases de Datos
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: SELECT DISTINCT Responder citando

Hola a todos,

Necesito saber los datos de una tabla que en el campo "NOMBRE" sean diferentes.

Hago "SELECT DISTINCT nombre FROM clientes"

Y me devuelve todos los clientes cuyo nombre sea diferente pero el problema es que solo me devuelve el campo "NOMBRE" ninguno más.

Hay alguna forma de que me devuelva todos los campos pero con el filtro de que sean con distinto nombre"

Un abrazo.

Carlos
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Hola Carlos, proba con una subseleccion, algo asi
Código:
SELECT nombre,apellido,telefono FROM `clientes` where nombre IN(SELECT DISTINCT nombre FROM `clientes`)

saludos tor
_________________
Un experto es aquel que ya ha cometido todos los errores posibles en una materia muy concreta.
(Niels Bohr)
Volver arriba
Ver perfil de usuario Enviar mensaje privado MSN Messenger
Mensaje    Asunto: Responder citando

Muchas gracias,

Voy a probarlo y te cuento.

Un abrazo.

Carlos
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Ya lo he probado y no funciona.

Salen todos los registros, seguiré mirando.

Gracias de todos modos.

Carlos
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Has probado:
Código:
SELECT DISTINCT nombre,apellido,telefono FROM clientes


Si se repite algun nombre es porque varia alguno de los otros campos...
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Si, eso hacia inicialmente, el problema es que esa consulta compara los tres campos y la respuesta son solo esos tres campos, cuando el resto de los campos no sale.

Lo que necesito es hacer el DISTINC por los campos que sea, pero que el resultado sean todos los campos, no solo por los que estoy filtrando.

Un abrazo.

Carlos
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Si hay dos nombres iguales pero con apellido distinto. ¿Cual de los 2 registros es el resultado que esperas?
_________________
Mario.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Yahoo Messenger
Mensaje    Asunto: Responder citando

Pues no se, imagino que el primero que encuentre.

Un abrazo.

Carlos
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Mario escribió:
Si hay dos nombres iguales pero con apellido distinto. ¿Cual de los 2 registros es el resultado que esperas?

Mira: Acabo de hacer una prueba sobre unas base de datos Firebird con este query:
Código:
SELECT DISTINCT Nombre, Apellidos FROM Personas

y lo que se obtiene es la combinación DISTINTA de ambos campos.
_________________
Un saludo

Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA)
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Si,

Pero tengo el mismo problema, solo me muestra esos dos campos, yo lo que quiero es que haga la distinción sobre esos dos campos, pero que me muestre también el resto de los campos.

Un abrazo.

Carlos
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

El problema es que el DISTINCT afecta a todos los campos que vayan en la SELECT
_________________
Un saludo

Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA)
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Ya, por eso es complicado el tema este.

Lo tendré que hacer de otra manera, ya te contare que me sale.

Un abrazo.

Carlos
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Es que además no acabo de entender que buscas. ¿Quieres, por ejemplo, que te devuelva todas las filas en las que el nombre es Ángel?
_________________
Un saludo

Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA)
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

No,

La idea es que en una sola sentencia SQL me devuelva todas las filas con nombres diferentes, que no me salgan los repetidos, pero que salgan todos los campos y no solo el campo nombre.

Un abrazo.

Carlos
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Hola Carlos, no tengo ningún sql a mano ya que no estoy en casa, creo que lo que estas buscando es algo como el primer registro de un group by, encontré unos sql que podrías probar
https://www.microsoft.com/communities/newsgroups/en-us/default.aspx?dg=microsoft.public.es.sqlserver&tid=35c29d53-5a35-491e-9967-b26fea40e151&cat=es_ES_199eb449-6090-436b-ab80-d4e1c16e27e6&lang=es&cr=ES&sloc=&p=1, si sigues buscando en google con una cadena como "obtener el primer registro de cada group by" hay mucho mas, no estoy respondiendo tu pregunta pero es una idea por donde puede estar tu solución.
La consulta no es muy comun asi que de seguro va a depender de que bd estes usando, cuando vuelva a casa voy a probar en firebird. ¿que bd usas Carlos?.
saludos
_________________
Un experto es aquel que ya ha cometido todos los errores posibles en una materia muy concreta.
(Niels Bohr)
Volver arriba
Ver perfil de usuario Enviar mensaje privado MSN Messenger
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.