KeyConditionsは、IN
オペレータをサポートしていません。また、OR
演算子もサポートしていません。
ただし、ハッシュキーとソートキーでデータをフィルタリングするにはAND
演算子をサポートしています。 KeyConditionsについては
、唯一以下の比較演算子は がサポートされています。
EQ | LE | LT | GE | GT | BEGINS_WITH | BETWEEN
KeyConditionExpression - (文字列)クエリアクションによって取得されるアイテムのキーの値を と指定する条件。
この条件では、単一のパーティションキー の値に対して同等性テストを実行する必要があります。この条件では、単一のソートキー値に対していくつかの比較テストのうちの1つを実行することもできます( )。クエリでKeyConditionExpressionを使用すると、 は、指定されたパーティションキー値とソートキー値 または同じパーティションキー値を持つが、異なる ソートキー値を持つ複数のアイテムを持つ1つのアイテムを取得できます。
あなたはFilterExpressionを使用してではなく、クエリをスキャンすることができます。ただし、スキャンはDynamoDBのコストのかかる操作であり、探しているソリューションではない可能性があります。
var params = {
TableName: "Movies",
FilterExpression: "title IN (:titlevalue1, :titlevalue2)",
ExpressionAttributeValues: {
":titlevalue1": "The Big New Movie 2012",
":titlevalue2": "The Big New Movie",
}
};
もう1つのオプションは、異なるキーを使用してデータベースを複数回クエリすることです。
どのようなエラーが表示されますか? –
KeyConditionExpressionで無効な演算子が使用されました:IN' – elsonwx