Как подсчитать похожие интересы в MySQL

У меня есть 2 таблицы: «интересы» и «пользователи_интернетс».

У «пользователей_интерации» просто есть идентификаторы пользователей и интерест полей. «Интересы просто имеют идентификатор и имя .

Мне просто нужно найти идентификаторы пользователей, которые имеют более 3 общих идентификаторов интересов. Мне сказали, что само-присоединение вовлечено, но я не могу заставить это работать.

Кто-то сказал, что что-то подобное может сработать:

SELECT 
      others.userid 
  FROM interests AS user 
  JOIN interests AS others 
      USING(interestid) 
  WHERE user.userid = 2 
  GROUP BY 
      others.userid 
  ORDER BY COUNT(*) DESC

Но мне не повезло с этим.

5
задан animuson 3 December 2011 в 03:42
поделиться