baza danych

MI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 199
0

Rozważmy następującą sytuację:
Mamy bardzo dużo użytkowników, mamy dla nich tabelę, każdy ma uniklany id.
Teraz każdy użytkownik ma możliwość rozmowy z innymi userami. Każda wiadomość to jeden wiersz.
Jak to zoorganizować?
Możemy niby stworzyć tabelę WIADOMOŚCI, gdzie będzie właściciel wiadomości. Ale w takiej tabeli będą wiadomości wszystkich userów, a więc przeszukiwanie za każdym razem wszystkich wiadomości może nie być najlepszym pomysłem.

KA
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Warszawa
  • Postów: 1683
0

tak robisz tabele messages z polami np. sender_id receiver_id text. zakładasz indeks i baza danych sobie poradzi, chociaż może sprecyzuj o jaką bazę danych chodzi. przeszukiwanie nie jest takie straszne patrz drzewa.

  • Rejestracja: dni
  • Ostatnio: dni
0

Nie martw sie o czas wykonania wystarczy ze postawisz indeksy na tabeli z wiadomosciami.

vpiotr
  • Rejestracja: dni
  • Ostatnio: dni
1

przyda się jeszcze pole message_id i ew. created_dt (data i czas utworzenia / timestamp).
Pomocne przy sortowaniu wiadomości wg kolejności nadawania).

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.