从Cypher查询中删除节点导致Neo4j

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

我有以下密码:

MATCH (n) 
WHERE toLower(n.name) STARTS WITH toLower('ja') 
RETURN n

此不区分大小写的查询返回其名称以子字符串“ja”开头的所有节点。例如,如果我在我的数据库中执行它,它将返回[“Javier”,“Jacinto”,“Jasper”,“Jacob”]

我需要这个脚本来删除此列表中不需要的节点,例如,假设包含[“Jasper,Javier”]的数组被发送到数据访问层,指示不应返回这两个节点,留下最终查询结果如下:[“Jacinto”,“Jacob”]

我怎么能这样做?

neo4j cypher graph-databases
1个回答
2
投票

如果您在查询之前知道应该排除哪些项目,您可以说:

MATCH (n) 
WHERE toLower(n.name) STARTS WITH toLower('ja') 
AND NOT (toLower(n.name) IN ['jasper', 'javier'])
RETURN n
© www.soinside.com 2019 - 2024. All rights reserved.