1
많은 사용자가 유물 집합에 주석을 첨부 한 데이터 세트가 있으며 사용자가 직접/간접적으로 상호 작용 한 다른 모든 사용자를 알고 싶습니다. 나는 또한 기여한 아티팩트에 기여한 각 사용자와 다른 모든 사용자를 보여주는 쿼리를 작성하려고합니다. 내 데이터는이 경우 사용자 A에 따라서이개체에서 사용자 간의 상호 작용 추적
+----------+------+
| Artifact | User |
+----------+------+
| 1 | a |
| 1 | b |
| 1 | c |
| 1 | d |
| 2 | a |
| 2 | m |
+----------+------+
같은이 B, C, D & m와 상호 작용 보인다; b는 a와 상호 작용했다. c & d; 그리고 m은 중복 (그래서에만 고유 한 값)을 표시하지 것이다
이상적와 상호 작용하지만, 필요하다면 나는 그 통해 잡초 수
당신은GROUP_CONCAT
기능을 사용할 수 있습니다
좋아,이게 대부분 제가 고마워하는 일입니다. 하지만 실제로는 너무 많은 겹침이있어 모든 관계를 보여주지 못합니다. 중복을 제거 할 수있는 방법이 있습니다 (예제 코드 http://tqlfiddle.com/#!2/14b83/1). 여기서 m & b는 중복 됨 – Mike
업데이트 된 쿼리는 http://sqlfiddle.com/#!2/14b83/2입니다. 또한 답변을 업데이트했습니다 (추가 : GROUP_CONCAT (DISTINCT ...) –