Mam takie pytanko, mam 2 tabele:
CREATE TABLE IF NOT EXISTS `test` ( `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT, `user` bigint(20) DEFAULT NULL, `p1` smallint(1) DEFAULT NULL, `p2` smallint(1) DEFAULT NULL, `p3` smallint(1) DEFAULT NULL, `p4` smallint(1) DEFAULT NULL, `p5` smallint(1) DEFAULT NULL, `p6` smallint(1) DEFAULT NULL, `p7` smallint(1) DEFAULT NULL, `p8` smallint(1) DEFAULT NULL, `p9` smallint(1) DEFAULT NULL, `p10` smallint(1) DEFAULT NULL, UNIQUE KEY `gt_id` (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; CREATE TABLE IF NOT EXISTS `loginy` ( `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT, `login` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, UNIQUE KEY `gt_id` (`gt_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ;
w tabeli test pola oznaczają:
- user = loginy.id
- p1-p10= liczba od 1 do 10 (ocena)
Mam skrypt który ma w $_SESSION['dane'] - id usera (przykładowo).
Chce generalnie wyświetlić listę użytkowników wraz z informacją (procentową) jak bardzo podobną do mojej odpowiedź zaznaczyli...
SELECT * FROM test WHERE user = '$_SESSION['dane']' - zwróci mi informację o moich odpowiedziach....
Teraz chciałbym poznać odpowiedzi innych w formie
- login_uzytkownika | ocena_procentowa
- login_uzytkownika | ocena_procentowa
- login_uzytkownika | ocena_procentowa
...
w tabeli z testami są oceny wielu użytkowników. każdy użytkownik może mieć nieskończenie wiele ocen od innych użytkowników.
Ocenę chce uzyskać w formie procentowej, czyli:
- pobrane z bazy moje odpowiedzi = 100%
- szukamy w bazie ocen dla innych użytkowników i porównujemy ich z moją oceną - i wyświetlamy w % podobieństwo...
hmm... jak by to porównać... Załóżmy że wypełniam formularz zgłoszeniowy do biura pracy i na podstawie tych danych szukamy ludzi którzy
zaznaczyli odpowiedzi podobne do moich... nie wiem czy dość dobrze to zobrazowałem....
Wiecie może jak to zrobić?
Z góry dziękuje za pomoc,
Northwest