ARANGODB AQL无法使用MATCHES()
函数来处理嵌套对象。MATCHES()
函数在AQL中用于执行正则表达式匹配,但是不支持嵌套对象的匹配。
如果需要处理嵌套对象的匹配,可以使用FILTER
子句和AQL中的嵌套查询来实现。
以下是一个示例解决方法:
假设有一个users
集合,其中每个文档包含一个名为address
的嵌套对象,我们想要根据address.city
字段进行匹配。
FOR user IN users
FILTER user.address != null && user.address.city == "New York"
RETURN user
上述AQL查询使用FILTER
子句来筛选出具有非空address
字段且address.city
为"New York"的文档。
如果需要进行更复杂的嵌套对象匹配,可以使用更多的条件和逻辑运算符来构建查询。
需要注意的是,由于AQL查询是在服务器端执行的,所以在执行嵌套对象匹配时可能会增加一些性能开销。