KeyConditions는 IN
연산자를 지원하지 않습니다. 또한 OR
연산자를 지원하지 않습니다.
그러나 해시 키와 정렬 키로 데이터를 필터링하려면 AND
연산자를 지원하십시오.
KeyConditions를 들어
만 다음과 같은 비교 연산자는 가 지원됩니다
EQ | 르 | LT | GE | GT | BEGINS_WITH | BETWEEN
KeyConditionExpression - (문자열) 쿼리 동작에서 검색 할 항목의 값인 값을 지정하는 조건입니다.
조건은 단일 파티션 키 값에 대해 동등성 테스트를 수행해야합니다. 조건은 단일 정렬 키 값에 대해 여러 비교 테스트 중 하나 ( ) 중 하나를 수행 할 수도 있습니다. 쿼리에서 KeyConditionExpression을 사용하여 은 지정된 파티션 키 값과 정렬 키 값 또는 동일한 파티션 키 값을 가지지 만 정렬 키 값을 가진 여러 항목으로 항목 하나를 검색 할 수 있습니다.
FilterExpression을 사용하는 쿼리가 아닌 의 검색이 될 수 있습니다. 그러나 검색은 DynamoDB에서 비용이 많이 드는 작업이며 원하는 솔루션이 아닐 수도 있습니다.
var params = {
TableName: "Movies",
FilterExpression: "title IN (:titlevalue1, :titlevalue2)",
ExpressionAttributeValues: {
":titlevalue1": "The Big New Movie 2012",
":titlevalue2": "The Big New Movie",
}
};
다른 옵션은 다른 키를 사용하여 데이터베이스를 여러 번 쿼리하는 것입니다.
어떤 오류가 발생합니까? –
KeyConditionExpression에 잘못된 연산자가 사용되었습니다 : IN' – elsonwx