RedisGraph - 使用 MERGE 组合多个指令

RedisGraph - Combining multiple directives with MERGE

我目前 运行 Neo4J 上的以下查询

match (p:Initial{state: 'Initial', name: 'Initial'}), (c:Encounter{code:'abcd', state: 'Encounter', name: 'Encounter1'})
merge (p)-[:raw {person_id:'1234', type:'Encounter', code:'abcd'}]->(c)

但是我无法在 RedisGraph 上执行相同的查询。 根据我目前的了解,Redis 似乎不支持 combining MERGEwith other directives

  1. 有什么解决方法吗?
  2. 是否可以更改查询以使其在没有匹配语句的情况下执行相同的功能?

我现在看到的唯一选择是将其拆分为两个查询, 第一个检查 p 是否连接到 c:

MATCH (p:Initial{state: 'Initial', name: 'Initial'})-[:raw {person_id:'1234', type:'Encounter', code:'abcd'}]->(c:Encounter{code:'abcd', state: 'Encounter', name: 'Encounter1'}) RETURN p,c

如果上述查询 returns 为空,则发出第二个查询以形成关系:

MATCH (p:Initial{state: 'Initial', name: 'Initial'})(c:Encounter{code:'abcd', state: 'Encounter', name: 'Encounter1'}) CREATE (p)-[:raw {person_id:'1234', type:'Encounter', code:'abcd'}]->(c)