Neo4jPHP - 处理结果集中的许多实体

时间:2015-02-11 03:36:19

标签: php neo4j neo4jphp

我在Cypher查询中返回了几个实体,其中一些是单数的,而另一些实体可能有很多。例如,如果我去RETURN name, dob, addressname将返回一个对象,dob将返回一个对象,addresses可以返回多个对象。

如何遍历结果集以获取正确的数据并将其收集到有意义的数组中?例如:

$array = array(
    name = 'name',
    dob = 'd/o/b',
    addresses = array(
        array(
           'myData'
        ),
        array(
           'myData'
        )
    )
)

到目前为止,当foreach($result as $row)行包含namedob的重复项时,每个address

这是我的Cypher查询:

MATCH  (creator:CreatingUser)-[:creator]-(event:Event), (occurrence:EventSpaceTimeOccurrence)-[:occurrence]-(event)
WHERE  creator.id = '1234'
RETURN event, creator, occurrence

1 个答案:

答案 0 :(得分:0)

使用distinct关键字:

MATCH  (creator:CreatingUser)-[:creator]-(event:Event), (occurrence:EventSpaceTimeOccurrence)-[:occurrence]-(event)
WHERE  creator.id = '1234'
RETURN DISTINCT event, creator, occurrence