有关如何为iOS应用程序构建AWS dynamodb的复杂查询的文档

时间:2016-10-14 14:18:41

标签: ios amazon-web-services amazon-dynamodb

我正在尝试创建一个应用程序,其中使用相对复杂的查询参数集查询用户数据库。我已经找到了关于如何使用aws mobile sdk(http://docs.aws.amazon.com/mobile/sdkforios/developerguide/dynamodb_om.html)查询的基本文档,但我不确定如何执行更复杂的操作(即同时有多个查询条件)。

作为一个例子,如果我想在数据库中查询包含list属性中某些值并且属于某个lat和lon属性的用户,我该怎么办呢?

也许这对Dynamo来说可能是不可能的,但如果没有,那么我应该使用哪种数据库类型以及在iOS中形成这些多部分查询的文档在哪里?

由于

1 个答案:

答案 0 :(得分:0)

您可以为这些值配置范围键,然后使用rangeKeyConditionExpression进行查询。像这样:

AWSDynamoDBQueryExpression *queryExpression = [AWSDynamoDBQueryExpression new];

queryExpression.indexName = @"Author-Price-index";

queryExpression.hashKeyAttribute = @"Author";
queryExpression.hashKeyValues = @"John Smith";

queryExpression.rangeKeyConditionExpression = @"Price < :val";
queryExpression.expressionAttributeValues = @{@":val":@50};

这应该可以让您了解如何实现某些过滤。您还可以使用逻辑运算和条件来放置多个过滤器。请参阅:http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Condition.html

谢谢, 罗汉