Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: "Wall" czyli tablica aktywnosci znajomych
Forum PHP.pl > Forum > Bazy danych > MySQL
Fantome
Witam,
Od pewnego czasu pracuję nad małym silnikiem społecznościowym i mam pewien problem, a raczej brak pomysłu.
w serwisie tym jest 10,000 osób, ja mam 300 znajomych. Każdy z nich coś robi, dodaje fotki, komentuje je, zmienia opisy itp. wszystko to zapisuje się w tablicy "wall".
no i jak można w miarę optymalnie wyciągnąć z tablicy wszystkie zmiany dokonane tylko przez moich znajomych?
tablica friends:
id | user_id | friend_id

tablica wall:
id | user_id | data | nazwa | itd.

proszę o pomoc:)
jedyne co mi przychodzi do głowy to przejrzeć tablicę 300 razy:/
pozdrawiam Fantome:)
dr_bonzo
Najtrywialniejsze rozwiazanie to join:
  1. SELECT wall.* FROM friends JOIN wall ON wall.user_id = friends.friend_id WHERE friends.user_id = $id



A zrob cos takiego - jak user X cos zrobi to zapiszesz powiadomienia o tym do wszyskich jego znajomych
a potem tylko:
  1. SELECT * FROM wall WHERE user_id = twoje_id
.
Dane dodajesz tylko raz, a odczytow masz mase, wiec pewnie to bedzie szybsze.

Fantome
ok dzięki za szybką odpowiedź :]
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.