【问题标题】:relationship types in py2neopy2neo 中的关系类型
【发布时间】:2013-07-17 12:16:04
【问题描述】:

如何在 py2neo 中通过密码查询获取关系类型? 我有这段代码有效。

def print_row(row):
    a,b = row
    print (a["name"] + " " + b["name"])

cypher.execute(graph_db, "START a=node(1) MATCH (a) - [] - (b)  RETURN a,b", row_handler=print_row) 

这样我可以打印出连接到我的输入节点 (1) 的节点。

ROCK PAPER
ROCK SCISSORS

但是,我想要打印这些节点所具有的关系类型。

例如:

ROCK BEATS SCISSORS
ROCK BEATEN_BY PAPER

我尝试(但失败)如下:

def print_row(row):
    a,b,r = row
    print (a["name"] + r["type"] + b["name"])

cypher.execute(graph_db,"START a=node(1) MATCH (a) -[r]->(b) RETURN a,b,r", row_handler=print_row)

如何使用 py2neo 做到这一点?

【问题讨论】:

    标签: neo4j py2neo


    【解决方案1】:

    您需要使用 Cypher TYPE 函数 (http://docs.neo4j.org/chunked/milestone/query-functions-scalar.html#functions-type)。您的代码将如下所示:

    def print_row(row):
        a, r_type, b = row
        print(a["name"] + " " + r_type + " " + b["name"])
    
    cypher.execute(graph_db, "START a=node(1) MATCH (a)-[r]->(b) RETURN a, TYPE(r), b", row_handler=print_row)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多