- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
在我的 Android 应用程序中,我想从 DynamoDB 查询数据。将有一千个匹配项目,但我只想获得其中的前 10 个。我不知道如何设置这个限制。我在文档中找到了这些行:
DynamoDB 查询和扫描 API 允许使用限制值来限制结果的大小。
在请求中,将 Limit 参数设置为您希望 DynamoDB 在返回结果之前处理的项目数。
在响应中,DynamoDB 返回Limit 值范围内的所有匹配结果。例如,如果您发出 Limit 值为 6 且没有筛选表达式的 Query 或 Scan 请求,DynamoDB 将返回表中与请求中指定的关键条件匹配的前六个项目(或仅返回表中的前六个项目没有过滤器的扫描的情况)。如果您还提供了 FilterExpression 值,DynamoDB 将返回前六个中也符合过滤要求的项目(返回的结果数将小于或等于 6)。
但是我找不到设置响应限制的方法。我找到了QueryResult的SetCount方法:
QueryResult result2 = dynamodb.query(request);
result2.setCount(5);
它说:然后Count是应用过滤器后返回的项目数
但我认为这不是我想要的。因为 DynamoDb 在调用 setCount 之前仍然会返回所有匹配项。谁能帮帮我?
最佳答案
您需要将限制应用为发送给 API 的请求的一部分,而不是响应。
我假设您提交给 dynamodb 对象的请求对象是一个 QuerySpec .您要做的是调用 withMaxResultSize在针对 API 运行查询之前传入您想要应用的限制。
但是,正如您在问题中提到的,您需要确保了解 limit 的行为,如 Limits 上的 DynamoDB 文档中所述。 :
In a response, DynamoDB returns all the matching results within the scope of the Limit value. For example, if you issue a Query or a Scan request with a Limit value of 6 and without a filter expression, DynamoDB returns the first six items in the table that match the specified key conditions in the request (or just the first six items in the case of a Scan with no filter). If you also supply a FilterExpression value, DynamoDB will return the items in the first six that also match the filter requirements (the number of results returned will be less than or equal to 6).
这意味着如果您不使用 FilterExpression,您可能没问题。但是,如果您过滤结果,您收到的结果可能会少于您的限制,因为从技术上讲,限制不是要返回的结果数量,而是 DynamoDB 可能返回的项目数量。
这听起来像是您在寻求一种方法,让 DynamoDB 在应用 FilterExpression 时将返回的结果数量限制为精确数量。不幸的是,目前 DynamoDB 无法做到这一点。
关于java - 如何使用 Java 设置 DynamoDB 返回的匹配项的限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31644605/
我有一个 ServiceBusQueue(SBQ),它获取大量消息负载。我有一个具有 accessRights(manage) 的 ServiceBusTrigger(SBT),它不断轮询来自 SBQ
在下面给出的结果集中,有 2 个唯一用户 (id),并且查询中可能会出现更多此类用户: 这是多连接查询: select id, name, col1Code, col2Code, col2Va
我正在用 Python 2.7.3 编写一个带有 GRequests 的小脚本和 lxml 可以让我从各种网站收集一些收藏卡价格并进行比较。问题是其中一个网站限制了请求的数量,如果我超过它,就会发回
我想知道何时实际使用删除级联或删除限制以及更新级联或更新限制。我对使用它们或在我的数据库中应用感到很困惑。 最佳答案 在外键约束上使用级联运算符是一个热门话题。 理论上,如果您知道删除父对象也将自动删
下面是我的输出,我只想显示那些重复的名字。每个名字都是飞行员,数字是飞行员驾驶的飞机类型。我想显示驾驶不止一架飞机的飞行员的姓名。我正在使用 sql*plus PIL_PILOTNAME
我正在评估不同的移动框架,我认为 nativescript 是一个不错的选择。但我不知道开发过程是否存在限制。例如,我对样式有限制(这并不重要),但我想知道将来我是否可以有限制并且不能使用某些 nat
我正在尝试使用 grails 数据绑定(bind)将一些表单参数映射到我的模型中,但我认为在映射嵌入式集合方面可能存在一些限制。 例如,如果我提交一些这样的参数,那么映射工作正常: //this wo
是否可以将 django 自过滤器起的时间限制为 7 天。如果日期超过 7 天,则不应用过滤器 最佳答案 timesince 的源代码位于 django/django/utils/timesince.
我想在我的网站上嵌入一个 PayPal 捐赠按钮。但问题是我住在伊朗——这个国家受到制裁,人们不使用国际银行账户或主要信用卡。 有什么想法吗?请帮忙! 问候 沮丧 最佳答案 您可以在伊朗境内使用为伊朗
这是我的查询 select PhoneNumber as _data,PhoneType as _type from contact_phonenumbers where ContactID = 3
这个问题在这里已经有了答案: What is the maximum number of parameters passed to $in query in MongoDB? (4 个答案) 关闭
我的一个项目的 AndroidManifest.xml 变得越来越大(> 1000 行),因为我必须对某些文件类型使用react并且涵盖所有情况变得越来越复杂。我想知道 list 大小是否有任何限制。
在使用 Sybase、Infomix、DB2 等其他数据库产品多年后使用 MySQL 5.1 Enterprise 时;我遇到了 MySQL 不会做的事情。例如,它只能为 SELECT 查询生成 EX
这个问题在这里已经有了答案: What is the maximum number of parameters passed to $in query in MongoDB? (4 个回答) 关闭5年
通常我们是在{$apache}/conf/httpd.conf中设置Apache的参数,然而我们并没有发现可以设置日志文件大小的配置指令,通过参考http://httpd.apache.org/do
我正在搜索最大的 Android SharedPreferences 键值对,但找不到任何好的答案。其次,我想问一下,如果我有一个键,它的字符串值限制是多少。多少字符可以放入其中。如果我需要频繁更改值
我目前正在试验 SoundCloud API,并注意到我对/tracks 资源的 GET 请求一次从不返回超过 200 个结果。关于这个的几个问题: 这个限制是故意的吗? 有没有办法增加这个限制? 如
我正在与一家名为 Dwolla 的金融技术公司合作,该公司提供了一个 API,用于将银行信息附加到用户并收取/发送 ACH 付款。 他们需要我将我的 TLS 最低版本升级到 1.2(禁用 TLS 1.
我在 PHP 中有一个多维数组,如下所示: $array = Array ( [0] => Array ( [bill] => 1 ) [1] => Array ( [
我在获取下一个查询的第一行时遇到了问题: Select mar.Title MarketTitle, ololo.NUMBER, ololo.Title from Markets mar JOIN(
我是一名优秀的程序员,十分优秀!