Если вы хотите удалить только хеш-ключ, вам нужно сначала выполнить запрос записей, а затем использовать batchDelete
, чтобы удалить все записи.
HashMap<String, AttributeValue> eav = new HashMap<String, AttributeValue>();
eav.put(":v1", new AttributeValue().withS(value));
DynamoDBQueryExpression<DocumentTable> queryExpression = new DynamoDBQueryExpression<DocumentTable>()
.withKeyConditionExpression("documentId = :v1")
.withExpressionAttributeValues(eav);
List<DocumentTable> ddbResults = dynamoDBMapper.query(DocumentTable.class, queryExpression);
dynamoDBMapper.batchDelete(ddbResults);
Я хотел бы назвать здесь, что deleteItem
удаляет только один пункт, в то время как и хэш-ключ и ключ должен быть диапазон, указанный для этого.
Я буду очень благодарен, если вы упомянете ссылку – Hans
@ Я обновил ответ, если вы считаете, что это правильно, вы можете отметить как ответ. –
Это меня удивило. Я больше знаком с Cassandra, у которой есть возможность удалить весь раздел, указав только ключ раздела. –