Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [mysql] Wydajność, czyli: dwie tabele, czy jedna?
Louner
post 12.03.2007, 07:52:20
Post #1





Grupa: Zarejestrowani
Postów: 99
Pomógł: 5
Dołączył: 20.06.2005
Skąd: Bielsk Podlaski

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post
SongoQ
post 12.03.2007, 10:11:14
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

Ostrzeżenie: (0%)
-----


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


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 09:28