Cypher查询中的问题使用if和merge

时间:2017-10-24 08:41:24

标签: neo4j cypher

在给定的密码查询中,它显示错误。请让我知道以下Cypher查询中的错误:

MATCH (pcp:PCP)-[]->(mt:MONEYTRANSFER{MTCN:'1618087665684829'}) return 
CASE WHEN  EXISTS( (pcp)-[:SENT_BY]-(mt{MTCN:'1618087665684829'}) ) 
THEN null ELSE MERGE (pcp:PCP)-[]->(mt:MONEYTRANSFER{MTCN:'1618087665684829'})
END

1 个答案:

答案 0 :(得分:0)

尝试在stackoverflow上查看此question。它给出了使用带MERGE

的CASES的示例

您的查询有一个解决方法:

MATCH (pcp:PCP)-[r]->(mt:MONEYTRANSFER{MTCN:'1618087665684829'})
WITH pcp,r,mt, CASE WHEN (type(r) = 'SENT_BY') THEN [] ELSE ['create'] 
END as array1
FOREACH (el1 in array1 | CREATE (pcp)-[:SENT_BY]->(mt))
return pcp,mt,r

编辑:如果没有为其指定标签/类型,则无法创建版本。

希望这有帮助!