在objective-c中使用扫描filter的dynamodb scanexpression
AWSDynamoDBObjectMapper *dynamoDBObjectMapper = [AWSDynamoDBObjectMapper defaultDynamoDBObjectMapper]; AWSDynamoDBScanExpression *scanExpression = [AWSDynamoDBScanExpression new]; scanExpression.exclusiveStartKey = nil; scanExpression.limit = @20; [[[dynamoDBObjectMapper scan:[DDBTableRow class] expression:scanExpression] continueWithExecutor:[BFExecutor mainThreadExecutor] withSuccessBlock:^id(BFTask *task) { ................
我能够扫描并返回从DynamoDB的特定表中logging的前20个,如上面的一段代码所示。
现在的问题是我想添加一个scanExpression.scanFilter =
属性,但我还没有find如何build立的好方向。 我在AWSiOSSDKv2
上使用AWSiOSSDKv2
aws sdk for iOS
这是我到目前为止。 它还没有完成:
AWSDynamoDBCondition *condition = [AWSDynamoDBCondition new]; AWSDynamoDBAttributeValue *attribute = [AWSDynamoDBAttributeValue new]; attribute.N = @"400"; condition.comparisonOperator = AWSDynamoDBComparisonOperatorEQ; NSDictionary *scanFilter = @{@"lat": @{@"AttributeValueList":attribute, @"ComparisonOperator":@1} }; scanExpression.scanFilter = scanFilter;
你可以使用它如下:
AWSDynamoDBCondition *condition = [AWSDynamoDBCondition new]; AWSDynamoDBAttributeValue *attribute = [AWSDynamoDBAttributeValue new]; attribute.N = @"400"; condition.attributeValueList = @[attribute]; condition.comparisonOperator = AWSDynamoDBComparisonOperatorEQ; scanExpression.scanFilter = @{@"lat": condition};