如何查询和过滤存储在dynamodb上的对象类型数据列表?

时间:2016-09-19 06:53:42

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

我有一个名为“A”的列表,它存储了一个对象列表。每个对象都是这样的,

"A" : [
    {
        "B" : "aaaaa",
        "C" : "sssss"
    },
    {
        "B" : "asasa",
        "C" : "sasas"
    }
]

如何查询和过滤A持有的这些对象?我尝试了以下KeyCondition表达式,

" A[*].B = 'aaaaaa' "

" A.B = 'aaaaaa' "

但是没有一件事能做我想做的事。

编辑1:

使用“aws-java-sdk-dynamodb”v1.11.31

查询规范构建如下,

QuerySpec query = new QuerySpec().withHashKey("user_name", "disney")
                                 .withFilterExpression("A[*].B = :value")
                                 .withValueMap(new ValueMap()
                                 .withString(":value","aaaaa"));
ItemCollection<QueryOutcome> = table.query(query);

1 个答案:

答案 0 :(得分:0)

我想,没有办法完成我想做的事情。我最终编写了循环,生成了我需要的过滤器表达式,并且我多次查询以完成此操作。