我的关系是(a)-[:HAS]->(b)
我希望用户能够提供a_id
或b_id
并获取数据,这些内容与cypher查询类似:
MATCH (a:A {id: {a_id}})-[:HAS]->(b:B {id: {b_id}}) RETURN *
但如果我没有通过参数a_id
或b_id
,我会收到错误消息。在neo4j中是否有任何方法允许参数不存在然后忽略它?
可能有以下几点:
CASE {a_id} WHEN NOT NULL THEN ...
答案 0 :(得分:1)
您可以使用命名的顶级参数。例如:
通过参数:
:params { "_": { a_id: '123' } }
并查询:
MATCH (a:A {id: {_}.a_id})-[:HAS]->(b:B {id: {_}.b_id}) RETURN *