我有一个使用空间插件的包含空间数据的图表。
此图具有“威胁区域”(多边形),这些区域可以位于其他区域的顶部,因此它们也具有z-index属性。
每个“威胁区域”被附加到1到N个威胁场景,有时多个“威胁区域”被附加到相同的威胁场景,具有不同的属性。
我正在尝试获取每个威胁场景的最高威胁区域,基于z-index,针对特定位置。
这是我当前的查询,它几乎是完美的:
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函数来获得我想要的东西,和/或使用嵌套查询来提取意图/能力(这就是我想要的)?
https://stackoverflow.com/questions/47595890
复制相似问题