【问题标题】:Retrieving subset of Array/List on Neo4j node property在 Neo4j 节点属性上检索 Array/List 的子集
【发布时间】:2013-09-29 08:09:53
【问题描述】:

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

现在我想从这个数组中每次查询只检索 4 条消息。 例如。如果消息列表是这样的:

[“嗨”、“嘿”、“姓名”、“尼克”、“年龄”、“23”]

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

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

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

【问题讨论】:

    标签: neo4j cypher graph-databases


    【解决方案1】:

    2.0.0-M05版本可以返回集合的范围。假设您有一个用户 'a' 和一个用户 'b',他们通过关系 [:FRIEND] 与 ["Hi", "Hey", "Name", "Nick", "年龄”,“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-M03 版本中是否存在任何类似的功能?
    • 不,这是一项新功能。
    【解决方案2】:

    在 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]
    

    【讨论】:

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