0
나는 몇 가지 큰 (121,000,000 행) 테이블 (BIGINT LINK_TO 아이디 BIGINT)이 있습니다큰 테이블의 postgresql에서 행별로 출력 조합 값을 계산하는 방법은 무엇입니까?
id | link_to
---|--------
1 | 4
2 | 4
3 | 4
5 | 7
6 | 7
을 그리고 LINK_TO 값으로 교차 자체 ID 값을 연결해야합니다. 따라서 동일한 link_to 값 (4)을 가진 ID 값 (1,2,3) 사이의 모든 조합이어야하며 모든 link_to 값에 대해 반복되어야합니다. 결과에서
은 다음과 같아야합니다
id | link_to
---|--------
1 | 2
1 | 3
2 | 1
2 | 3
3 | 1
3 | 2
5 | 6
6 | 5
내가 삽입합니다이 선택 (ON 충돌로 피하기 dublicate 고유 인덱스 (ID, LINK_TO)에 대한 아무것도하지 않는다) 같은 테이블에 있습니다. GROUP BY link_to -> array_agg (id) -> unnest -> ORDINALITY와 함께 플레이를 시도했지만 성공하지 못했습니다 ...
다른 솔루션 (CTE, 윈도우 기능, 사용자 정의 함수)이 있습니까?
빙고! 큰 감사를 드린다! http://www.azquotes.com/quote/503289 –