我有一个问题。我正在尝试运行此查询。
START n= NODE(5749,5750,5751,5752,5753,5754,5755,5756,5757,5758,5759,5760)
MATCH p=(a)-[:KNOWS]-(n)-[:KNOWS]-(b)
OPTIONAL MATCH q=(a)-[:KNOWS]-(b)
RETURN Distinct n.name AS ID,COUNT(distinct p) as NR, COUNT(q) as BR;
结果有点奇怪。我的数据库总共有276597
个节点和401634
个关系。但是在上述查询的结果中,我在图形视图中有一个节点的392502
关系。我找到了2 q relationships
,但是以表格形式它们是零!
以下是上述查询的结果:
答案 0 :(得分:1)
由于您没有在查询中指明任何关系的方向性,因此您的计数包括重复项(请注意您的所有结果都是偶数)。
您的查询稍微修改后的版本应该会获得更好的结果(您应该使用适用于您的用例的任何方向性):
START n= NODE(5749,5750,5751,5752,5753,5754,5755,5756,5757,5758,5759,5760)
MATCH p=(a)-[:KNOWS]->(n)-[:KNOWS]->(b)
OPTIONAL MATCH q=(a)-[:KNOWS]-(b)
RETURN Distinct n.name AS ID,COUNT(distinct p) as NR, COUNT(q) as BR;
OPTIONAL MATCH
子句仍然没有指定任何方向性,因为我假设你真的想在这种情况下得到两个方向。但是,如果合适,您还应该在该子句中指定方向性。