SQL-запрос для получения пары ссылок - PullRequest
0 голосов
/ 16 марта 2011

У меня есть три таблицы:

  • один проиндексирован по именам проектов (ПРОЕКТ)
  • один проиндексирован по именам людей (УЧАСТНИК)
  • тот, который связывает участников с проектами (одна строка для каждого участника каждого проекта) (PROJPART).

    Люди могут и часто будут участвовать в нескольких проектах. Мне нужен SQL-запрос (с использованием MySQL), который перечислит все пары проектов, которые связаны, потому что они имеют по крайней мере один член. Возможно ли это в SQL? Если да, можете ли вы предложить форму запроса?

Ответы [ 2 ]

0 голосов
/ 16 марта 2011

Внутренний выбор вернет членов, которые в более чем 1 проекте.Эти проекты будут связаны.

 SELECT member_id,project FROM PROJECT, PROJPART WHERE
      PROJPART.project_id= PROJECT.project_id AND 
      PROJPART.MEMBER IN
      (SELECT MEMBER, SUM(1) FROM PROJPART
      GROUP BY members
      HAVING SUM(1)>1)
      ORDER BY member_id

Я думаю, что это не совсем то, что вы хотите, но это может помочь вам

0 голосов
/ 16 марта 2011
select c.project_name, d.project_name
from projpart a
inner join projpart b
  on a.memberid = b.memberid
     and a.projectid < b.projectid
inner join project c on c.projectid = a.projectid
inner join project d on d.projectid = b.projectid
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...