Pomoc przy łączeniu kilku tabel

0

Witam mam trzy tabele.

users

id login
1 maciej
2 michał
3 łukasz
microblog_entries
id user_id
---------------- ----------------
1 1
2 1
3 2
4 2
5 3
observe
id user_id
---------------- ----------------
1 2

Chodzi mi o to , że jeżeli jeden z użytkowników się zaloguje , np michał który obserwuje łukasza widział swoje wpisy i jego.
A jeżeli się zaloguje np maciej to , żeby tylko widział swoje. To w zależności kto kogo obserwuje.

Bardzo bym prosił o pomoc w zapisaniu takiego zapytania.

nie ma nikogo kto by pomógł ?

0

Jak widzę, nie masz odwagi zajrzeć do żadnego kursu SQL. Z góry uznałeś, że ta tajemna wiedza Ciebie przerasta, może słusznie...

SELECT me.body
FROM users u
LEFT OUTER JOIN observe o ON o.user_id = u.id
INNER JOIN microblog_entries me ON me.user_id = u.id OR me.user_id = o.followed_id
WHERE u.id = 2;
0

no widzisz zajrzałem tylko , że nie działało to jak trzeba :) bo mi pobierało tylko wpisy tych co obserwuje ten użytkownik. Ale dzięki za zapytanie. Jeszcze do niego muszę wsadzić to , żeby odwoływał się do loginu i będzie bosko.

SELECT DISTINCT body, ( SELECT login FROM users WHERE id=mb.user_id ) as lo3
FROM `users` AS `u`
LEFT JOIN `observe` AS `ob`
   ON `u`.`id` = `ob`.`user_id`
LEFT JOIN `microblog_entries` AS `mb`
   ON `mb`.`user_id` = `u`.`id` OR `mb`.`user_id` = `ob`.`followed_id`
WHERE `u`.`id` = 3 

dla potomnych ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1