Por que definir
claves foraneas.. usa las
claves primarias.
CREATE TABLE representante(
ID INT NOT NULL PRIMARY KEY AUTO_INCREMENT, -- Definimos una clave primaria que se auto incremente...
Nombre VARCHAR(30),
Apellido VARCHAR(30)
);
CREATE TABLE estudiante(
ID INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
IDpadre INT(15), -- Relacionamos con la tabla representante...
Nombre VARCHAR(30),
Apellido VARCHAR(30)
);
http://sqlfiddle.com/#!2/e0897/1- Se me complica la cosa porque si busco a uno de los 3 hijos supongamos que a Meliza entonces debo mostrar en los resultados a Junior y Abrahan también, pero como lo hago?.
Utilizando JOIN y 'simulando' un FULL JOIN en mysql la otra forma es usar funciones.
Asi es como lo pensaria yo, puede que exista otras fromas.