使用RedisGraph,我希望查询返回关系的类型。
一个示例查询:
MATCH (n1:Entity { id: "foo" }) MATCH (n2:Entity2 { id: "bar" }) CREATE (n1)-[r:areFriends]->(n2) RETURN *
不幸的是,返回的值仅包括n1和n2,而不包括r。
返回的记录包含以下内容:
Record { _header: [ 'n1.id', 'n1.name', 'n2.id', 'n2.name' ] --这与我的模式是一致的,但r却是众所周知的缺失。
我怎样才能得到回报的关系?
OpenCypher支持如下语法:
RETURN n1, n2, type(r),但这在RedisGraph中似乎不起作用。
发布于 2019-01-20 07:03:31
PR刚刚合并成主人
127.0.0.1:6379> GRAPH.QUERY G "create (:Entity {id:'foo'}), (:Entity {id:'bar'})"
1) (empty list or set)
2) 1) "Labels added: 1"
2) "Nodes created: 2"
3) "Properties set: 2"
4) "Query internal execution time: 0.536000 milliseconds"
127.0.0.1:6379> GRAPH.QUERY G "MATCH (n1:Entity {id:'foo'}), (n2:Entity {id:'bar'}) CREATE (n1)-[r:areFriends]->(n2) RETURN n1,n2,TYPE(r)"
1) 1) 1) "n1.id"
2) "n2.id"
3) "TYPE(r)"
2) 1) "foo"
2) "bar"
3) "areFriends"
2) 1) "Relationships created: 1"
2) "Query internal execution time: 0.409000 milliseconds"请注意,此更改将是1.0.12版的一部分。
在发布该版本之前,您可以从源构建,也可以使用docker映像redislabs/redisgraph:edge。
发布于 2019-01-17 18:41:40
目前,RedisGraph不支持混合CREATE和RETURN子句,尽管这项工作正在进行中,并且应该在几天内就可以使用。
https://stackoverflow.com/questions/54226979
复制相似问题