공간 플러그인을 사용하여 공간 데이터가있는 그래프가 있습니다.사이퍼를 사용하여 다른 값으로 최대 레코드 얻기
이 그래프에는 "위협 영역"(다각형)이 있으며, 다른 쪽 위에있을 수 있으므로 z- 색인 속성도 있습니다.
각 "위협 영역"은 1 - N 개의 위협 시나리오에 연결되며, 여러 위협 요소 시나리오에 여러 속성이 포함 된 "위협 영역"이 여러 개 붙는 경우가 있습니다.
특정 위치에 대해 z- 인덱스를 기반으로 각 위협 시나리오에 대한 상위 위협 영역을 얻으려고합니다.
이 거의 완벽있는 내 현재 쿼리입니다 :
MATCH (asset:Asset{name:'Asset Name'})-[]-(ara:AssetRiskAssessment)
WITH asset, ara
CALL spatial.intersects('threat_zones',asset.wkt) YIELD node
WITH node, asset, ara
MATCH (node)<-[:FOR]-(tss:ThreatScenarioScore)-[]-(ts:ThreatScenario)
RETURN ts.name, max(node.zindex) AS zindex, tss.intention, tss.capability
ORDER BY ts.name, zindex
내 문제 - 나는 제거하면 tss.intenion
, tss.capability
나는 (오른쪽 영역의 각 관련 위협 시나리오) 무엇을 찾고 있어요지고있어 하지만 내가 필요한 것은 tss.intention
과 tss.capability
입니다. 그들의 값이 영역 사이에서 다르므로 max 함수는 다른 레코드로 간주합니다.
max 함수를 사용하여 원하는 것을 얻는 중첩 된 쿼리를 사용하여 의도/기능 추출에 더 좋은 방법이 있습니까?