Database Neo4j-理解密码查询

Database Neo4j-理解密码查询,database,graph,neo4j,cypher,Database,Graph,Neo4j,Cypher,我对Neo4j和Cypher很陌生。 我编写了以下查询: MATCH (tp: TPPRODUCT_VERSION {TPPRODUCTCODE: "Z1115"}) <-[:IS_TPBOMPARENT_OF]-(pv: PRODUCT_VERSION) <-[:IS_BOMPARENT_OF*..]-(parent: PRODUCT_VERSION) RETURN parent, pv, tp 匹配(tp:TPPRODUCT_版本{TPPRODUCTCODE

我对Neo4j和Cypher很陌生。 我编写了以下查询:

MATCH (tp: TPPRODUCT_VERSION {TPPRODUCTCODE: "Z1115"})
<-[:IS_TPBOMPARENT_OF]-(pv: PRODUCT_VERSION)
<-[:IS_BOMPARENT_OF*..]-(parent: PRODUCT_VERSION)
RETURN parent, pv, tp
匹配(tp:TPPRODUCT_版本{TPPRODUCTCODE:“Z1115”})

所以你可能想用

您的查询强制neo4j匹配特定模式。如果该模式不存在,那么您将无法获取匹配的数据。在这种情况下,您需要所有的
产品版本
s,而不仅仅是那些有父母的,也包括那些没有父母的

因此,请尝试以下查询:

MATCH (tp: TPPRODUCT_VERSION {TPPRODUCTCODE: "Z1115"})<-[:IS_TPBOMPARENT_OF]-(pv: PRODUCT_VERSION)
OPTIONAL MATCH (pv)<-[:IS_BOMPARENT_OF*..]-(parent: PRODUCT_VERSION)
RETURN parent, pv, tp

MATCH(tp:TPPRODUCT_VERSION{TPPRODUCTCODE:“Z1115”})这正是我要搜索的!非常感谢!:)