Dynamodb SDK Query spe c - передать значения Dynami c в состоянии IN - PullRequest
0 голосов
/ 16 марта 2020

Как передать значения в фильтре запросов Dynamodb, условие IN выражения, используя Queryspe c Object. Я использую приведенный ниже запрос для извлечения данных

querySpec.withKeyConditionExpression("partner_id = :v_id and transaction_datetime between :v_start_dt and :v_end_dt") 
.withFilterExpression("company_id IN (:com_id)")
                .withScanIndexForward(true)
                .withValueMap(new ValueMap().withNumber(":v_id", partnerId).withNumber(":v_start_dt", startDateTime)
                        .withNumber(":v_end_dt", endDateTime)
.withNumber(":com_id", companyId.next()
                );  while (itemIterator.hasNext()) {
        String dynamoDBResponse = itemIterator.next().toJSON();
        Gson gson = new Gson();
        RecordEntity recordEntity = gson.fromJson(dynamoDBResponse, RecordEntity.class);
        recordEntityList.add(recordEntity);
    }

Здесь я дал выражение фильтра как .withFilterExpression("company_id IN (:com_id)") и значение как .withNumber(":com_id", companyId.next()

Как передать список значений в : выражение фильтра com_id. Есть ли способ сделать это?

...