Ver Mensaje Individual
  #1  
Antiguo 06-07-2007
eugenioclrc eugenioclrc is offline
Registrado
 
Registrado: jul 2007
Posts: 3
Reputación: 0
eugenioclrc Va por buen camino
Question Problema logico

Antes que nada les voy a mostrar las tablas que tengo.

CREATE TABLE `jerarquia` (
`idhijo` int(11) NOT NULL default '0',
`idpadre` int(11) NOT NULL default '0',
`hijos` int(1) NOT NULL default '0',
KEY `idpadre` (`idpadre`),
KEY `idcat` (`idcat`)
)

CREATE TABLE `nombres` (
`id` int(11) NOT NULL,
`nombre` int(11) NOT NULL default '0',
PRIMARY KEY `id` (`id`)
)



Mediante esta tabla represento un arbol, donde idpadre es la identificadion del padre, que es un numero, idhijo es la identificacion numerica del hijo. En la tabla nombres tengo los nombres de los integrantes del arbol.



Vamos a dar un ejemplo, digamos que Carlos, es papa de Alberto, que es papa de Juan. Esto reflejado en la base seria;



tabla nombres;

(1,'Carlos'), (2,'Alberto'), (3,'Juan');



tabla jerarquia;

(1,0,1), (2,1,1), (3,2,0);



Partiendo del id de alguien quiero obtener su arbol genealogico, de la forma id,nombre. Por ejemplo, me dan la id = 2 entonces tendria que obtener;

(1,'Carlos')
(2,'Alberto')

Y todo esto haciendo una sola consulta.



Alguna sugerencia o idea?
Responder Con Cita