【问题标题】:Iterate only over attributes with array values in Arango仅在 Arango 中迭代具有数组值的属性
【发布时间】:2019-03-14 11:49:38
【问题描述】:

我知道在 ArangoDB 中,您可以使用以下结构来遍历文档中的所有属性:

FOR doc IN collection 
  LET attrs = ATTRIBUTES(doc)  

我想做类似的事情,但是我想忽略没有数组值的属性,即我只想迭代值是数组的键值(不是字符串、对象、等)是否可以通过这种方式过滤属性,如果可以,如何过滤?

【问题讨论】:

    标签: arangodb aql


    【解决方案1】:

    ATTRIBUTES() 不会返回文档中的所有属性,准确地说,只返回顶级属性。

    如果您对值为 array 类型的顶级属性感兴趣,则可以执行以下操作来获取其属性键:

    FOR doc IN collection
      LET attrs = (
        FOR att IN ATTRIBUTES(doc)
          FILTER IS_ARRAY(doc[att])
          RETURN att
      )
    ...
    

    【讨论】:

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