我们可以在DocumentDb中使用参数化查询传递5个以上的值

时间:2015-02-12 06:10:37

标签: azure-cosmosdb

我刚刚阅读了Ryan CrawCour的博客文章,DocumentDb现在支持参数化查询,我们甚至可以传递数组或嵌套的JSON。

这是否意味着我可以使用此方法在查询中传递超过5个值?在DocumentDb查询中似乎有5个AND和OR的限制。

这是一个场景: 我有20个EmployeeId的列表。我想检索他们的信息,例如我的收藏中的姓名,电子邮件等。我现在可以使用包含这20个ID的参数在单个查询中检索其信息吗?

2 个答案:

答案 0 :(得分:0)

不完全;仍有5个AND和OR的限制。 SQL参数化更改只是添加处理和转义用户输入,以帮助保护您免受SQL注入攻击。

今天,您需要发出多个查询来检索20个员工ID的列表。您可以通过创建存储过程并将数组传递给服务来避免对服务进行一堆往返。

请在蔚蓝的反馈论坛上发表意见并投票支持“in”,以便优先考虑此功能: http://feedback.azure.com/forums/263030-documentdb/suggestions/6395357-in-operator

答案 1 :(得分:0)

现在引入了IN子句,并且因为它基于一个索引字段进行查询,所以它限制为100个值,这对于大多数用例来说应该足够了。因此,您可以通过一次DocDb调用获取员工文档。 你可以看看: https://www.documentdb.com/sql/demo