我正在尝试运行查询并获取所有项目。似乎并不是所有的项目都被检索到,我需要使用start键再次运行查询。
从留档
对于查询或扫描操作,如果操作未返回表中的所有匹配项,DynamoDB可能会返回LastEvaluatedKey值。要获取匹配项的完整计数,请从上一个请求中获取LastEvaluatedKey值,并将其用作下一个请求中的ExclusiveStartKey值。重复此操作,直到DynamoDB不再返回LastEvaluatedKey值。
你能给出一个代码示例如何包装这段代码来使用lastEvalue atedKey再次运行查询吗?
QuerySpec spec = new QuerySpec()
.withKeyConditionExpression("userName = :userName and #a between :startRange and :endRange")
.withValueMap(valueMap)
.withScanIndexForward(false)
.withNameMap(nameMap);
ItemCollection<QueryOutcome> items = table.query(spec);
Iterator<Item> iterator = items.iterator();
while (iterator.hasNext()) { ....
谢了弗莱迪
看起来您使用的是DynamoDB文档API,而不是低级API。当您使用文档API进行查询时,所有低级注意事项(如分页)都将被考虑在内,但您可以选择与这些低级方面进行交互。
根据您提供的代码片段,当您到达每个页面的末尾时,文档API库将负责加载其他页面,因此您不需要做任何额外的工作,您的代码应该可以工作!这是使用文档API的真正好处,因为它为常见用例处理了大量冗余的锅炉板代码。
我正在尝试运行一个查询并获取所有项目。似乎没有检索到所有项目,我需要使用start键再次运行查询。 从文件中 对于Query或Scan操作,如果操作没有返回表中所有匹配的项目,DynamoDB可能会返回LastEvalatedKey值。要获取匹配项的完整计数,请从上一个请求中获取LastEvalatedKey值,并在下一个请求中将其用作ExunisiveStartKey值。重复此操作,直到Dyna
当我将参数嵌入到下面的路径中时,我可以成功地传递参数 我应该使用‘参数’tabe只有当我做POST方法?我知道向JMeter传递参数是一个简单的问题,但我不能解决我的问题。
我调用下面的方法来计算一些值。我提供agencyID和月份的整数表示来执行计算。 等等...直到我到达12月(值12)。然而,当我到达5月(月值5)时,代码给出了一个运行时错误。然而,奇怪的是这个错误被抛出 在我的查询中,我没有在查询中的任何位置包含shift\u dayId,如下所示: 我恳请帮助我确定为什么givenMonth在值大于4时抛出运行时异常。 谢谢你 编辑 这是我要求的ShiftD
我已经尝试从DynamoDB查询数据两天了。让我发疯。 我在办公室里有一张桌子。假设有两个办公室,科克和都柏林。我有一个名为“deskName”的列,它的名称有“cork1”、“cork2”、“dub1”、“dub2”。我希望能够查询表中包含“cork”或“dub”的项目,因为它们在同一个表中,但我不想扫描整个表。 代码: YAML: 错误: 当我出现“软木塞-1”的情况时,我设法把一件物品拿了回
我正在建立一个阳光应用从Udacity课程。在第2课中,我尝试将应用程序连接到OpenWeatherMap.org站点上的云,以获取城市的天气数据。首先,基本查询起作用,即URL URL=新URL(“http://api.openweathermap.org/data/2.5/forecast?id=524901&appid=c21566b1153f87e9f1d256b962cd6d42”);但
我有3张桌子: 学校之间存在一对多的关系- 我正在编写查询以获取特定学校的学生: 虽然我没有在规范查询或代码中的任何地方获取主题(如使用)。 我仍然可以在生成的查询中的日志中看到主题最终被获取。 我如何更新我的查询以仅限于学校 请建议。