Azure DocumentDB,是否可以将某个文档中的列表加入到查询中?
Azure DocumentDB, Is it possible to JOIN a list from a certain document to the query?
这是我喜欢做的事情,
我想找到其字段 "Color" 在颜色列表中的所有文档。
可以运行 "SELECT * FROM c WHERE c.Color IN (colorList)
问题是颜色列表对于查询来说太大了。
IN
子句中可以包含的元素数量有限制。我认为它是 100,所以它实际上可能足够用于颜色。如果这还不够,那么您唯一的选择是将其分解为小于限制的块,运行 单独查询,然后连接结果。您甚至可以 运行 它们并行。您可以在存储过程 (sproc) 中执行所有这些操作,但对于一批并行读取,通常最好直接获取到客户端,因为它允许 DocumentDB 从辅助节点读取。
这是我喜欢做的事情, 我想找到其字段 "Color" 在颜色列表中的所有文档。
可以运行 "SELECT * FROM c WHERE c.Color IN (colorList)
问题是颜色列表对于查询来说太大了。
IN
子句中可以包含的元素数量有限制。我认为它是 100,所以它实际上可能足够用于颜色。如果这还不够,那么您唯一的选择是将其分解为小于限制的块,运行 单独查询,然后连接结果。您甚至可以 运行 它们并行。您可以在存储过程 (sproc) 中执行所有这些操作,但对于一批并行读取,通常最好直接获取到客户端,因为它允许 DocumentDB 从辅助节点读取。