我需要根据订单ID(而不是分区键)从dynamodb中获取项目。
如果订单ID为 123456 (如上例中所述),我应该获得此商品。
有人可以让我知道是否有可能实现这一目标。如果是,怎么办?
DynamoDB表
@DynamoDBTable(tableName="SomeTable")
public class SomeTable {
private String id;
private String name;
private List<Order> orders;
@DynamoDBHashKey(attributeName="id")
public String getId() {
return id;
}
}
第2类
@DynamoDBDocument
public class Order {
private String id;
private String name;
}
DynamoDB表数据
"Items": [
{
"orders": {
"L": [
{
"M": {
"name": {
"S": "xyz"
},
"id": {
"S": "123456"
}
}
}
]
},
"id": {
"S": "789"
},
"name": {
"S": "abcd"
}
}
答案 0 :(得分:0)
执行public void registerTorchCallback (CameraManager.TorchCallback callback, Handler handler)
而不是Scan
https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Scan.html
进行扫描时,您的Query
必须是AttributeValue
,而不仅仅是String Set
。
在您的String
中,将条件FilterExpression
与CONTAINS
一起使用
https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Condition.html