在ArangoDB的AQL中,您可以使用子查询和UNION操作符来查找不在查询中的空对象。下面是一个示例解决方法:
// 创建一个集合来存储数据
FOR i IN 1..5
INSERT { _key: CONCAT("doc", i) } INTO myCollection
// 创建一个包含已知空对象的数组
LET knownEmptyObjects = [
{ _key: "doc1" },
{ _key: "doc3" },
{ _key: "doc5" }
]
// 执行查询,查找不在已知空对象数组中的空对象
LET emptyObjects = (
FOR doc IN myCollection
FILTER doc == null
FILTER doc._key NOT IN (
FOR obj IN knownEmptyObjects
RETURN obj._key
)
RETURN doc
)
// 输出结果
RETURN emptyObjects
在上面的代码示例中,首先创建了一个名为myCollection
的集合,并插入了一些文档。然后,创建了一个包含已知空对象的数组knownEmptyObjects
。接下来,执行了一个查询来查找不在已知空对象数组中的空对象。最后,返回了查询结果。
请注意,此示例中的查询条件是doc == null
,这表示只返回空对象。您可以根据需要更改查询条件来满足您的要求。
希望这个示例对您有所帮助!