Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/12/2009, 06:12
tirengarfio
 
Fecha de Ingreso: septiembre-2008
Mensajes: 146
Antigüedad: 16 años, 4 meses
Puntos: 1
Consuta SQL para extraer los amigos de un miembro de una red social

Hola,

estoy haciendo una pequeña red social y en estos momentos intento extraer los usuarios que son amigos del miembro de la red que tiene id=1 en la tabla "usuario".

Como podeis imaginar tengo dos tablas como estas (usuario y amigo_usuario)

Código:
+-------+-------+--------+
| Name  |  Age  |  Town  |
+-------+-------+--------+
|  Juan |    23 | Madrid | 
| Maria |    45 |   Lima | 
| Pedro |    40 |  Leon  | 
+-------+-------+--------+

+-------+-------+--------+
| user1 | user2 | estado |
+-------+-------+--------+
|     1 |     2 |      1 | 
|     3 |     1 |      1 | 
|     2 |     2 |      1 | 
+-------+-------+--------+
El siguiente codigo me da como resultado el registro correspondiente a "Maria":

Código:
SELECT s.id AS s__id, s.name AS s__name, s.edad AS s__edad, s.town AS s__town, a.user1 AS a__user1, a.user2 AS a__user2, a.estado AS a__estado FROM usuario s LEFT JOIN amigo_usuario a ON s.id = a.user2 WHERE a.user1 = 1 AND a.estado = 1
Como podeis ver en en la tabla "amigo_usuario", Pedro tambien es amigo de Juan. Mi duda: ¿cual seria la consulta SQL que pueda extraer tambien la amistad de Pedro?


Un saludo

Javi