gpt4 book ai didi

ios - 如何在 DynamoDB (iOS) 中查询多个项目?

转载 作者:行者123 更新时间:2023-11-29 00:39:26 25 4
gpt4 key购买 nike

我想获取许多videoIds的项目,而不是像这段代码中只有一个视频项目一样?有没有办法从索引中查询多个项目?

AWSDynamoDBObjectMapper *objectMapper = [AWSDynamoDBObjectMapper defaultDynamoDBObjectMapper];
AWSDynamoDBQueryExpression *queryExpression = [AWSDynamoDBQueryExpression new];

queryExpression.indexName = @"getVideoItem";
queryExpression.keyConditionExpression = @"#id = :id";
queryExpression.expressionAttributeNames = @{
@"#id" : @"id",
};
queryExpression.expressionAttributeValues = @{
@":id" : videoId,
};
__weak typeof(self) weakSelf = self;

[objectMapper query:[PublicVideos class]
expression:queryExpression
completionHandler:^(AWSDynamoDBPaginatedOutput * _Nullable response, NSError * _Nullable error) {
if (!error) {
dispatch_async(dispatch_get_main_queue(), ^{
if ([weakSelf.delegate respondsToSelector:@selector(ServerConnectionHandlerVideoListRecevied:)]) {
[weakSelf.delegate ServerConnectionHandlerVideoListRecevied:response.items];
}
});
}
}];

最佳答案

您的表格架构是什么样的?您是否为表启用了散列键和范围键?如果您没有任何范围键,则每个哈希键将只有 1 个条目,并且您的查询将仅返回一行。

如果你同时拥有散列键和范围键,你可以通过这样的方式查询:

AWSDynamoDBObjectMapper *objectMapper = [AWSDynamoDBObjectMapper defaultDynamoDBObjectMapper];
AWSDynamoDBQueryExpression *queryExpression = [AWSDynamoDBQueryExpression new];
queryExpression.indexName = @"Artist-Album-index";
queryExpression.keyConditionExpression = @"#artist = :artist AND #album < :album";
queryExpression.expressionAttributeNames = @{
@"#artist" : @"Artist",
@"#album" : @"Album",
};
queryExpression.expressionAttributeValues = @{
@":artist" : @"valuetosearch",
@":album" : @"valuetosearch",
};
[objectMapper query:[Song class]
expression:queryExpression
completionHandler:^(AWSDynamoDBPaginatedOutput * _Nullable response, NSError * _Nullable error) {
dispatch_async(dispatch_get_main_queue(), ^{
// handle response
});
}];

在上面的代码片段中,它会尝试查找符合“<”条件的艺术家的所有专辑

关于ios - 如何在 DynamoDB (iOS) 中查询多个项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39857032/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com