仅在Arango

时间:2019-03-14 11:49:39

标签: arangodb aql

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

FOR doc IN collection 
  LET attrs = ATTRIBUTES(doc)  

我想做类似的事情,但是我想忽略没有数组值的属性,也就是说,我只想遍历值是数组的键值(而不是字符串,对象,等。)是否可以通过这种方式过滤掉属性,如果可以,怎么办?

1 个答案:

答案 0 :(得分:2)

ATTRIBUTES()不会返回文档中的所有属性,而是仅返回最精确的顶级属性。

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

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