Azure COSMOS DB 如何查询数组中的包含

Loc*_* Le 2 sql azure azure-cosmosdb azure-cosmosdb-sqlapi

如何进行查询以获取文档数组“角色”中包含某些内容的文档?我想获得以下文档,其中 Trainer 是数组中的一个元素。

"enabled": true,
"profilePicture": null,
"roles": [
   "Trainer",
   "Client"
 ],
Run Code Online (Sandbox Code Playgroud)
SELECT * FROM u WHERE u['$type'] = 'User' AND //roles contains Trainer
Run Code Online (Sandbox Code Playgroud)

Dav*_*gon 6

只需使用ARRAY_CONTAINS. 修改您的查询:

SELECT *
FROM u
WHERE u['$type'] = 'User'
AND ARRAY_CONTAINS(u.roles, 'Trainer')
Run Code Online (Sandbox Code Playgroud)

更多信息在这里