如何在neo4j Cypher中获取列表的子集

问题描述 投票:0回答:1

我想知道如何在Cypher中获取列表的子集?

让我们假设以下Cypher查询:

WITH ['a','b','c'] AS set1,  ['b'] AS set2
RETURN set1, set2

我想得到RETURNset3结果,set1['a','c']的一个子集,仅包含值set2。因此过滤掉了['b'](此样本中的WITH ['a','b','c'] AS set1, ['b'] AS set2 RETURN [item in set1 WHERE NOT item in set2] as set3 值)的内容。

任何想法如何做到这一点?

谢谢,Koen

neo4j cypher subset
1个回答
0
投票

使用Cypher,您可以在列表中使用过滤器操作,确保您保留的唯一值不是第二个列表中的值:

APOC Procedures plugin

虽然如果你有WITH ['a','b','c'] AS set1, ['b'] AS set2 RETURN apoc.coll.subtract(set1, set2) as set3 ,你可以使用其中一个集合函数来执行列表减法:

qazxswpoi
© www.soinside.com 2019 - 2024. All rights reserved.