Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

diasgabrie

amigos de amigos

Recommended Posts

bom dia amigos,

 

tenho a tabela following com os seguintes campos:

 

id - 0,1,2...

user - usuario que esta seguindo

following - usuario seguido pelo user

 

 

acontece que quero mostrar os seguidores de quem A segue, exemplo:

id - user - following
1 - A - B
2 - A - C
2 - B - C
3 - B - D
4 - C - E

'A' segue 'B' e 'C', logo, quero mostrar quem o 'B' e C seguem para o 'A' como opção de seguir; ou seja, quero mostrar o 'D' e o 'E' (já que o C eu já sigo).

 

Como poderia fazer isso? mostrar os "amigos de amigos" excluindo dessa lista aqueles amigos de amigos que eu também já sigo?

Muito obrigada!

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

não tem um jeito mais simples? tentei fazer assim:

SELECT user, following FROM following WHERE user IN (SELECT following FROM following WHERE user = '$user') AND following <> '$user' order by rand()

só não consegui excluir desse select os amigos que eu já sigo, aparentemete ele esta mostrando os amigos de amigos, mas sem excluir os amigos de amigos que já sigo. alguma ideia pra me ajudar?

muito obrigada novamente!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo que entendi do modelo

select user, following
from following
where user in (select following   
               from following
               where user = '$user')
and following <> '$user'
and following not in (select following   
                      from following
                      where user = '$user')  
order by rand()

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Pelo que entendi do modelo

select user, following
from following
where user in (select following   
               from following
               where user = '$user')
and following <> '$user'
and following not in (select following   
                      from following
                      where user = '$user')  
order by rand()

 

muito obrigada, funcionou perfeito para o que quero!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.