Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mysql] Wydajność
Forum PHP.pl > Forum > Bazy danych > MySQL
Louner
Witam. smile.gif

Zastanawiam się, jakie rozwiązanie byłoby wydajniejsze w moim przypadku. Chciałbym dodać do bazy informacje o konfiguracji strony indywidualnej dla każdego użytkownika. Rozpatrywałem dwie możliwości:

1) dodanie kilku kolumn w tabeli z użytkownikami, np:

Kod
id / login / ..... / ile_art_na_strone / pokazuj_komentarze / template


2) dodanie drugiej tabeli z konfiguracją dla kazdego usera wyglądającej mniej więcej tak:

Kod
id / user / ile_art ....


i jednoczesne używanie tabeli z użytkownikami:

Kod
id / login ...


Które z tych rozwiązań byłoby wydajniejsze, jeżeli w pierwszym przypadku odwoływałbym się do niego zapytaniem:

  1. SELECT * FROM uzytkownicy WHERE login = ( SELECT id FROM uzytkownicy WHERE login = ".costamcostam." )


A w drugim:

  1. SELECT u.*, k.* FROM uzytkownicy u, konfiguracja k WHERE u.login = ( SELECT id FROM uzytkownicy WHERE login = ".costamcostam." ) AND k.user = u.id;


Ewentualnie, czy macie jakieś inne pomysły? smile.gif

Z góry dziękuję za pomoc.
SongoQ
Jesli jest 1 - 1 to nie ma sensu tworzyc osobnej tabeli, no chyba ze dane te sa opcjonalne. Co do zapytan to sa rowniez nieoptymalne. login = (zbior) chyba in powinno byc

1 zapytanie mozesz tak zapisac to samo daje:
  1. SELECT * FROM uzytkownicy WHERE login = 'costam'


2 zapytanie tak:
  1. SELECT u.*, k.* FROM uzytkownicy u, konfiguracja k WHERE u.login = ".costamcostam." AND k.user = u.id


A co jest lepsze to explain uzyj
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.