Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/03/2010, 12:44
Bier
 
Fecha de Ingreso: enero-2002
Mensajes: 1.174
Antigüedad: 22 años, 3 meses
Puntos: 21
Relacionar dos registros de una misma tabla (tabla anidada)

Tengo una tabla con 3 campos:

CLIENTES
cliente char(8)
nombre char(30)
amigo char(8)

Donde el campo "amigo" corresponde a un registro de la misma tabla y que será a su vez otro cliente.

Mi tabla estará poblada así:
101-Pedro-202
202-Luis-305
305-Paco-408
408-Pepe-978

Actualmente realizo mi consulta con esta instrucción la cual funciona perfectamente:
$consulta = mysql_query("SELECT clientes.cliente, clientes.nombre, clientes.telefono, clientes.amigo FROM clientes", $link);

Con lo cual se despliega:
101-Pedro-202
202-Luis-305
305-Paco-408
408-Pepe-978

Requiero buscar en la tabla el nombre del amigo para desplegarlo así:
101-Pedro-202-Luis
202-Luis-305-Paco
305-Paco-408-Pepe
408-Pepe-978-Juan

Lo anterior lo se hacer para el caso de 2 tablas diferentes con INNER JOIN, pero en este caso que se trata de una misma tabla ¿que debo hacer?

Imaginé hacerlo así:
$consulta = mysql_query("SELECT clientes.cliente, clientes.nombre, clientes.amigo FROM clientes INNER JOIN clientes on clientes.amigo=clientes.amigo", $link);

Pero no se dondecomo indicar el campo "nombre" que es el nombre del amigo.

Espero haberme explicado adecuadamente.

Gracias