다음과 같은 [id pid] 유형의 데이터 테이블이 있습니다.
<코드>--- 아이디 --- pid --- --- A --- B --- --- A --- C --- --- 비 --- 디 --- --- BE --- --- C --- F --- --- C --- G ---
해당 구조:
<사전><코드>-D -이자형 -비 에이 -기음 -에프 -GA, B, C, D, E, F, G(본인 포함)의 하위 팀 수를 계산하는 방법입니다.
예를 들어
팀 ID 번호
에이 7
비 3
C 3
디 1
전자 1
F 1
G 1
현재는 모든 데이터를 꺼내서 그런 데이터를 재귀적으로 얻고 있는데, 부하 직원이 있으면 팀 수를 재귀적으로 세어보겠습니다.
발생한 문제:
데이터 볼륨이 2W에 도달하면 모든 데이터가 빠져나가 메모리가 가득 차게 됩니다.
좋은 해결 방법이 있습니까?
단계별로 계산하면 전체 트리를 한 번에 꺼낼 필요가 없습니다.
의 후손 수를 구하려면또한 통계를 위해 각 노드에 대해 경로를 기록할 수 있습니다. 예를 들어 '%A%'와 같이 계산(*)하면 됩니다. A