Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 167 Pomógł: 0 Dołączył: 30.04.2004 Skąd: Częstochowa Ostrzeżenie: (0%)
|
Witam
Mam problem, nie bardzo wiem jak go rozwiązać. Mam w bazie użytkowników. Każdy użytkownik powiedzmy że może określić 10 cech - każda z cech ma do 50 opcji np. 1,2,3,4, ... 50. Chciałbym móc wyświetlić użytkowników, którzy mają jak najwięcej takich cech jak ja, najpierw tych którzy mają 10 identycznych, potem 9, potem 8 itd. Pytanie czy da się jakoś sensownie to przechować w tabeli żeby móc sortować w locie w mysqlu tabele czy może trzeba coś bardziej skomplikowanego wymyślić? Macie jakiś pomysł na rozwiązanie tego problemu? Pozdrawiam |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 167 Pomógł: 0 Dołączył: 30.04.2004 Skąd: Częstochowa Ostrzeżenie: (0%)
|
Powiem szczerze, ze szukałem co nieco, ale nie znalazłem nic ciekawego. Nie wiem poza tym, czy się dobrze zrozumieliśmy, więc teraz wrzucam przykładowy schemat bazy danych
Chciałbym wyświetlić te rekordy, które pola answer_1 ... answer_8 mają jak najbardziej zbliżone do rekordu o danym a_id_user. Patrząc na dane jeśli szukamy rekordów "podobnych" do rekordu użytkownika 1, to użytkownik 2 ma tylko 1 pole podobne (answer_1), użytkownik 3 ma 4 pola podobne (answer_1, answer_3,answer_7,answer_8), użytkownik 4 ma 2 pola podobne (answer_7,answer_8), użytkownik 5 ma 5 pól podobnych (answer_1,answer_5,answer_6,answer_7,answer_8), to chciałbym w rezultacie otrzymać rekordy z danymi (dopasowanie, a_id_user) posortowane względem dopasowania malejąco, czyli w tym przypadku: 5 5 4 3 2 4 1 2 Pytanie - czy jest to wykonalne? Schemat bazy może zostać dowolnie zmieniony, ale powinien zakładać spore obciążenie - w tej przykładowej tabeli rekordów docelowo może być kilkadziesiąt tysięcy |
|
|
|
pitbull82 Wyświetlenie rekordów podobnych - jak? 8.11.2010, 21:47:04
ciekawskiii wyswietlasz to normalnym zapytaniem tylko na koncu... 8.11.2010, 21:52:52
pitbull82 Rzecz w tym, że pól w tabeli będzie przykładowo 10... 8.11.2010, 23:58:42
zegarek84 niestety nie znamy struktury danych...
poczytaj o... 9.11.2010, 01:16:25
masters1987 Skorzystaj z funkcji agregujących języka SQL, a do... 1.03.2011, 07:58:32
wookieb Jak już to przeprojektuj tabele na taką strukture
... 1.03.2011, 08:56:21
pitbull82 Dzięki wookieb - to chyba rzeczywiście załatwi spr... 2.03.2011, 09:41:29 ![]() ![]() |
|
Aktualny czas: 28.12.2025 - 20:45 |