alamik
3.02.2011, 16:30:25
Witam, mam takie pytanie:
Czy lepiej posiadać jedną dużą tabelę, gdzie część danych się powtarza, czy zrobić z tego dwie tabele i w zapytaniach używać joina?
Generalnie wszędzie zaleca się stosowanie 3 postaci normalnej, aby wykluczyć anomalie i zmniejszyć objętność, ale mnie chodzi o samą wydajność takiego zapytania. Spotkałem się z opiniami, że łączenie tabel ma negatywny wpływ na wydajność
Pozdrawiam
wookieb
3.02.2011, 16:35:17
Po pierwsze nie mów o opiniach i ni pytaj się o porady jak nie podasz struktury tabeli i trochę przykładowych danych. Dodatkowo warto by było podać ile masz rekordów w twojej tabeli.
alamik
3.02.2011, 17:22:57
Ok, chodzi o mniej więcej coś takiego. Użytkownicy mogą oddawać głosy na różne produkty
USERS:
user_id
cecha_usera1
cecha_usera2
PRODUCTS
product_id
user_id
ocena //tutaj wstawia się wartość 1 - 10 zgodnie z oddanym głosem
cecha_usera1
cecha_usera2
Potem uzytkownicy mogą przeglądać oceny danego produktu pogrupowane wg cech użytkowniów
select cecha_usera1, cecha_usera2, sum (ocena)/count(*) from PRODUCTS group by cecha_usera1, cecha_usera2
wookieb
3.02.2011, 18:04:35
Nie widzę tutaj Joina, nie rozumiem tych cech. Co jest w tym trzymane?
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.