Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

listar solo nombres repetidos

Estas en el tema de listar solo nombres repetidos en el foro de Mysql en Foros del Web. Hola gente como podria listar solo nombres repetidos en una consulta simple? Personas ------------ id nombre apellido quiero listar SOLO las personas que tienen igual ...
  #1 (permalink)  
Antiguo 03/09/2013, 09:38
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 9 meses
Puntos: 288
listar solo nombres repetidos

Hola gente
como podria listar solo nombres repetidos en una consulta simple?

Personas
------------
id
nombre
apellido

quiero listar SOLO las personas que tienen igual nombre y apellido (sin importar cuantas veces aparescan)

ej:
Pepe Perez
Pepe Perez
Pepe Perez
Rosa Mosqueta
Rosa Mosqueta


gracias!
  #2 (permalink)  
Antiguo 03/09/2013, 10:02
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 7 meses
Puntos: 300
Respuesta: listar solo nombres repetidos

No he probado nada, pero creo que tal vez esto te sirva.
Código MySQL:
Ver original
  1.   count(*) apariciones,
  2.   nombre,
  3.   apellidos
  4. FROM personas
  5.      nombre,
  6.      apellidos
  7.    HAVING apariciones > 1
  8. ORDER BY apellidos, nombre
Pero, claro, eso te mostrará el nombre y los apellidos, pero no los registros. Si quieres que te aparecan los registros, te tocará hacer subconsultas
Código MySQL:
Ver original
  1.   p.id,
  2.   p.nombre,
  3.   p.apellidos
  4.  FROM personas p
  5.     INNER JOIN (SELECT
  6.                          count(*)
  7.                          apariciones,
  8.                          nombre,
  9.                          apellidos
  10.                          FROM personas
  11.                        GROUP BY nombre,
  12.                                      apellidos
  13.                         HAVING apariciones > 1)T1
  14.  ON (p.nombre = T1.nombre AND p.apellidos = T1.apellidos)
  15.  ORDER BY apellidos,
  16.                 nombre
  #3 (permalink)  
Antiguo 03/09/2013, 10:44
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 9 meses
Puntos: 288
Respuesta: listar solo nombres repetidos

hola amigo esta perfecto pero le agregué BINARY a
ON (BINARY p.nombre = T1.nombre AND BINARY p.apellidos = T1.apellidos)

y mejoró bastante el resultado pero me sigue mostrando algunos resultados con solo resultado,
por ejemplo
Raton Perez
Raton perez

me muestra a
Raton Perez

o sea que no lo descarta cuando la persona tiene el mismo nombre usando el binary

con esto estaria bien

gracias
  #4 (permalink)  
Antiguo 03/09/2013, 11:06
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 9 meses
Puntos: 288
Respuesta: listar solo nombres repetidos

Listo amigo, tu respuesta me ayudo mucho, el problema era por que esta tabla tiene una relacion a otra tabla y tenia que comparar algunas cosas mas pero con esto me alcanzo para resolverlo

sos un capo! y yo un pobre pibe jajaja

Etiquetas: nombres, repetidos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:33.