Mam takie tabele, jak poniżej. Użytkownikom (userprofile_profile) są przypisane słowa (userprofile_word). Użytkownik może mieć wielokrotnie przypisane dane słowo. Potrzebuję wyciągnąć tych użytkowników, którzy mają w sumie minimum 50 słów i przynajmniej jedno ze słów stanowi 25% wszystkich słów danego użytkownika. Mam nadzieję, że dobrze to opisałem. Będę wdzięczny za pomoc.
CREATE TABLE `userprofile_profile` ( `id` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; CREATE TABLE `userprofile_answer` ( `id` int(11) NOT NULL AUTO_INCREMENT, `word_id` int(11) NOT NULL, `profile_id` int(11) NOT NULL, PRIMARY KEY (`id`), KEY `userprofile_answer_word_id` (`word_id`), KEY `userprofile_answer_profile_id` (`profile_id`), ) ENGINE=MyISAM AUTO_INCREMENT=84923 DEFAULT CHARSET=utf8; CREATE TABLE `userprofile_word` ( `id` int(11) NOT NULL AUTO_INCREMENT, `word` varchar(30) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=30 DEFAULT CHARSET=utf8;