匹配Cypher查询中的问题

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

我正在使用特定查询创建节点: -

create(n:HMP_QUERY_NODE {attributeTypes:'“attrMap”:{}',dependentId:85,isSingle:false,nodeCategory:“MDFConcept”,queryDesc:“MATCH(mdf:MDFConcept) - [:_ properties] - >(auditnode) - >(辐条)其中spoke.identifier ='MDF.Alternate'和spoke.status ='确认'和spoke.start_date <= timestamp()<= spoke.end_date与不同的mdf可选匹配(mdf)< - [r ] - ()其中NOT(type(r)IN ['ConceptHasChild','hasInstance'])AND r.status ='确认'AND r.start_date <= timestamp()<= r.end_date with mdf,count(r )作为relCount,其中relCount = 0返回mdf.elementLabel,mdf._type,relCount“,queryId:123,queryLabel:”MDF - AlternateNodes Without Relationship“,queryName:”MDF - General Reports“,queryOptionId:1,queryOptions:”“ ,状态:“D”})返回n

我能够创建查询但仍然在UI中给出错误。 Error In Neo4j Server

接下来,我尝试通过此查询获取此特定节点:

MATCH(节点:HMP_QUERY_NODE)WHERE node.status ='D'AND node.queryName ='MDF - 常规报告'RETURN node.queryLabel,node.dependentId,node.queryId

我得到的结果应该是我从上面的查询创建的当前节点,但它不存在。

Match stmt resultset

现在,我无法理解这个问题是什么。我尝试用其他变量获取节点,但仍然没有收获。

Neo4j浏览器版本:3.0.11

neo4j cypher
1个回答
1
投票

在创建查询中放置空格:queryName:“MDF - General Reports”。我建议在你的密码中使用函数:trim(),你会看到结果。

MATCH (node:HMP_QUERY_NODE) WHERE node.status = 'D' AND trim(node.queryName) = 'MDF - General Reports' RETURN node.queryLabel,node.dependentId,node.queryId

结果:

╒════════════════════════════════════════════╤══════════════════╤══════════════╤═════════════════════════╕
│"node.queryLabel"                           │"node.dependentId"│"node.queryId"│"node.queryName"         │
╞════════════════════════════════════════════╪══════════════════╪══════════════╪═════════════════════════╡
│" MDF – AlternateNodes Without Relationship"│85                │123           │" MDF - General Reports "│
└────────────────────────────────────────────┴──────────────────┴──────────────┴─────────────────────────┘
© www.soinside.com 2019 - 2024. All rights reserved.