Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/07/2010, 21:19
ratasxy
 
Fecha de Ingreso: julio-2010
Mensajes: 2
Antigüedad: 14 años, 3 meses
Puntos: 0
Optimizar una cosulta para saber los Amigos en Comun

Buenos dias.

tengo un pequeño problema para un trabajo de la universidad, tengo que hacer un algoritmo para ver los amigos en comun optimizado, eficiente y rapido.

mis tabla amigos es asi

| ID | Amigo1_ID | Amigo2_ID | Status |

* si el estatus es 1 es que amigo2id acepto la amistad propuesta por Amigo1_id, estoy usando una consulta parecida a esta

Código:
select IDamigo from amigos where IDPersona = 2 and IDamigo in (select IDamigo from amigos where IDPersona =1);
pero esta consulta si usuario1 tiene 1000 amigos e usuario2 tiene otros 1000 tendria que hacerse 1000 x 1000 iteraciones.

talvez alguien sabe como optimizarla o como manejar la base de datos para que las consultas sean sencillas. no me importa restructurar todo

esperando gentilmente sus respuestas me despido y agradesco