检索Neo4j节点属性上的数组/列表子集

检索Neo4j节点属性上的数组/列表子集,neo4j,cypher,graph-databases,Neo4j,Cypher,Graph Databases,我是Neo4j的新手,手头有以下问题。我正在尝试开发一个社交网站,我想把两个用户之间交换的信息存储在他们的关系属性上。为此,我尝试将它们的所有消息以数组/列表的形式存储在关系属性上 现在我只想从这个数组中检索每个查询4条消息。 例如,如果消息列表如下所示: [“嗨”,“嗨”,“名字”,“尼克”,“年龄”,“23”] 然后,我希望能够根据我调用的索引获取这个数组的子集。 例如:如何在查询中从索引1检索元素到索引4 [“嘿”,“名字”,“尼克”,“年龄”] 属性上的数组是否支持此类操作。在2.0.0

我是Neo4j的新手,手头有以下问题。我正在尝试开发一个社交网站,我想把两个用户之间交换的信息存储在他们的关系属性上。为此,我尝试将它们的所有消息以数组/列表的形式存储在关系属性上

现在我只想从这个数组中检索每个查询4条消息。 例如,如果消息列表如下所示:

[“嗨”,“嗨”,“名字”,“尼克”,“年龄”,“23”]

然后,我希望能够根据我调用的索引获取这个数组的子集。 例如:如何在查询中从索引1检索元素到索引4

[“嘿”,“名字”,“尼克”,“年龄”]


属性上的数组是否支持此类操作。

在2.0.0-M05版本中,可以返回集合的范围。假设您有一个用户“a”和一个用户“b”,它们通过关系[:FRIEND]连接,属性“messages”为[“Hi”、“Hey”、“Name”、“Nick”、“Age”、“23”],并且您想要索引为1到4的消息

Match a:User-[r:FRIEND]->b:user
Where a.name = 'a' and b.name = 'b'
Return r.message[1,5]

在2.0.0-M05版本中,可以返回集合的范围。假设您有一个用户“a”和一个用户“b”,它们通过关系[:FRIEND]连接,属性“messages”为[“Hi”、“Hey”、“Name”、“Nick”、“Age”、“23”],并且您想要索引为1到4的消息

Match a:User-[r:FRIEND]->b:user
Where a.name = 'a' and b.name = 'b'
Return r.message[1,5]
在neo4j版本(2.0.0-M6)中,使用“..”作为逗号不起作用

Match a:User-[r:FRIEND]->b:user
Where a.name = 'a' and b.name = 'b'
Return r.message[1..5]
在neo4j版本(2.0.0-M6)中,使用“..”作为逗号不起作用

Match a:User-[r:FRIEND]->b:user
Where a.name = 'a' and b.name = 'b'
Return r.message[1..5]

谢谢你的回复,丽莎。版本2.0.0-M03中是否存在类似的功能?不,这是一个新功能。感谢您的回复。版本2.0.0-M03中是否存在类似的功能?不,这是一个新功能。