Рассмотрим следующий фрагмент:
Map<String, String> expressionAttributesNames = new HashMap<>();
Map<String, AttributeValue> expressionAttributeValues = new HashMap<>();
expressionAttributesNames.put("#completeDatefield", "completeDatefield");
expressionAttributeValues.put(":onlyMonth", new AttributeValue().withN(Long.toString(1)));
DynamoDBQueryExpression<Entity> dynamoDBQueryExpression = new DynamoDBQueryExpression<Entity>()
.withKeyConditionExpression("date_part(month, #completeDatefield) = :onlyMonth")
.withExpressionAttributeNames(expressionAttributesNames)
.withExpressionAttributeValues(expressionAttributeValues);
return dynamoDBMapper.query(Entity.class, dynamoDBQueryExpression);
Есть ли способ извлечь только месяц из атрибута DynamoDB 'completeDatefield' аналогичным образом, как это можно сделать в PostgreSQL с использованием date_part?