php - Joining multiple SQL queries to display online friends list? -


i trying join 3 tables display list of table users taken table subscribers ip = ip in table online.

subscribers table: (doesn't allow duplicates, type tells if or not other user subscribed back.)

sender  recipient 1       5      5       3  

users table:

id  loginip 1   192.168.0.1 3   192.168.0.2 5   192.168.0.3 

online table:

ip 192.168.0.1 192.168.0.2 192.168.0.5 

so query should grab id's, find loginip of id's , scan online table , return online users: (assuming userid = 5)

sender  recipient  send_ip       reci_ip 5       3          192.168.0.3   192.168.0.2 1       5          192.168.0.1   192.168.0.3 

i need figure out way cut ip if user = 5, not display on list. can myself after 1 of fine people me out bit. :)

my attempt, although poor:

select  f.sender friend1,     f.recipient friend2,     u1.loginip ip1,     u2.loginip ip2 subscribers f inner join users u1 on u1.id = f.sender inner join users u2 on u2.id = f.recipient inner join online o1 on o1.ip = u1.loginip inner join online o2 on o2.ip = u2.loginip      f.sender = 5 or      f.recipient = 5; 

thank you.

update: must tired, because works? i'm sorry.

the correct answer contained in question. i'm posting question doesn't appear unanswered.

select  f.sender friend1,     f.recipient friend2,     u1.loginip ip1,     u2.loginip ip2 subscribers f inner join users u1 on u1.id = f.sender inner join users u2 on u2.id = f.recipient inner join online o1 on o1.ip = u1.loginip inner join online o2 on o2.ip = u2.loginip      f.sender = 5 or      f.recipient = 5; 

Comments

Popular posts from this blog

c# - DetailsView in ASP.Net - How to add another column on the side/add a control in each row? -

javascript - firefox memory leak -

Trying to import CSV file to a SQL Server database using asp.net and c# - can't find what I'm missing -