Ver Mensaje Individual
  #10 (permalink)  
Antiguo 21/04/2008, 05:03
Avatar de bichomen
bichomen
 
Fecha de Ingreso: junio-2003
Ubicación: Barcelona y alrededores, España
Mensajes: 877
Antigüedad: 20 años, 11 meses
Puntos: 2
Re: Unir 2 consultas

Código:
SELECT CONCAT (a1.nombre,' ', a1.apellidos) as nombre_esposo, 
CONCAT (a2.nombre,' ',a2.apellidos) as nombre_esposa, 
m.fecha as fecha_matrimonio 
FROM matrimonios m, arbol a1, arbol a2 
where a1. id=m.idhombre 
AND a2.id =m.idmujer 
AND (m.idhombre IN (4) 
OR m.idmujer IN (4)) 
ORDER BY fecha
Lo e puesto dentro de un IN, por que como ya te dije, que podría haber mas de una esposa o marido.

El problema esta en esta parte de la consulta:

Código:
SELECT CONCAT (a1.nombre,' ', a1.apellidos) as nombre_esposo, 
CONCAT (a2.nombre,' ',a2.apellidos) as nombre_esposa
La consulta se realiza dentro de una ficha, donde yo ya tengo a Pepe o a Maria, lo que quiero, es obtener la mujer de Pepe o el marido de Maria y la fecha, pero la consulta que me pones me obtiene lo dos, sin manera de distinguir quien es el "conyuge", por que si pongo

Código:
SELECT CONCAT (a1.nombre,' ', a1.apellidos) as nombre_esposo
Solo me devuelve los hombres y si pongo:

Código:
SELECT CONCAT (a2.nombre,' ',a2.apellidos) as nombre_esposa
Solo me devuelve las mujeres

La consulta no tiene que entender de sexo, si yo obtengo el id de la ficha de Pepe o de Maria, me ha de devolver el id, nombre, apellidos y fecha de la pareja o parejas que haya podido tener.


bichomen
__________________
"Se sabe con exactitud, con cuanta imprecisión, se sabe algo"
Linux Registered User #320332

Última edición por bichomen; 26/04/2008 a las 17:20