neo4j-如何在关系查询的结果中引入一种类型的所有节点?

neo4j-如何在关系查询的结果中引入一种类型的所有节点?,neo4j,cypher,Neo4j,Cypher,我为这个愚蠢的问题感到抱歉。我在neo4j数据库中有两种类型的节点,即Recipes和mean_Type。我正在neo4j中运行一个cypher查询,结果是两种类型的节点之间的所有关系。该查询没有那么特殊,它是返回限制为200个节点的关系的默认查询 MATCH()-[r]->()返回r限制200 它运转良好。但我至少需要result中的所有fine\u类型节点,而不考虑result的其余部分。现在它正在返回11个用餐类型中的3个(有时在重新运行查询时返回4,5个)我认为您应该首先获取所有用餐类型

我为这个愚蠢的问题感到抱歉。我在neo4j数据库中有两种类型的节点,即
Recipes
mean_Type
。我正在neo4j中运行一个cypher查询,结果是两种类型的节点之间的所有关系。该查询没有那么特殊,它是返回限制为200个节点的关系的默认查询

MATCH()-[r]->()返回r限制200


它运转良好。但我至少需要result中的所有
fine\u类型
节点,而不考虑result的其余部分。现在它正在返回11个
用餐类型中的3个(有时在重新运行查询时返回4,5个)

我认为您应该首先获取所有
用餐类型
节点,然后使用该结果获取一组与其对应的
配方
节点

这是我所说的一个例子。取所有不同类型的食物,当然,除非你有一些你感兴趣的食物。然后,使用这些膳食类型返回相应配方集的样本(200~=19*11)

//匹配膳食类型
匹配(mt:餐型)
与mt
//找到相应食谱的样本。
匹配(mt)真的吗?我昨天回答了你之前的问题,这只是一个变体

这样就可以按节点标签对关系进行排序:

MATCH (n)-[r]-()
RETURN r
ORDER BY head(labels(n))
match(mt:fine\u Type)与mt match(mt)
-->
match(mt:fine\u Type)
还是我遗漏了什么?
MATCH (n)-[r]-()
RETURN r
ORDER BY head(labels(n))