amazon-dynamodb - IN 运算符提供的操作数过多;操作数数量 : 119 dynamodb

标签 amazon-dynamodb dynamo-local

尝试在 dynamodb 中使用 IN 操作,但出现以下错误。有人可以帮我提供替代解决方案吗?

var 参数 = {

TableName : "table_name",
FilterExpression : "id IN ("+Object.keys(profileIdObject).toString()+ ")",
ExpressionAttributeValues : profileIdObject

};

错误:: {

  "message": "Invalid FilterExpression: The IN operator is provided with too many operands; number of operands: 119",
  "code": "ValidationException",
  "time": "2018-02-13T08:48:02.597Z",
  "statusCode": 400,
  "retryable": false,
  "retryDelay": 25.08276239472692

}

最佳答案

根据文档:

The maximum number of operands for the IN comparator is 100

在这里找到:https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html#limits-expression-parameters

您将需要分批执行查询/扫描,在您的情况下,第一批中需要 100 个 Object.keys(profileIdObject).toString() ,第二批中需要 19 个。然后合并结果。

关于amazon-dynamodb - IN 运算符提供的操作数过多;操作数数量 : 119 dynamodb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48763039/

相关文章:

python - dynamodb/python updateitem 在嵌套映射中追加项目

php - DynamoDB 计数分组依据

java - 在 Java 中使用 DynamoDB 的 PutItem ConditionExpression(避免替换属性)

java - DynamoDBMappingException : no HASH key value present

amazon-dynamodb - 什么是 cli 的有效 dynamodb 键条件表达式

node.js - 使用本地 dynamodb 客户端的 dynamo-client

java - 在java中从DynamoDB本地检索选定的数据

database - 如何在 nosql DB 中以最少的重复存储翻译?

c# - 使用 .NET SDK 在 DynamoDB 中保留动态对象

amazon-web-services - AWS 环境变量提供商不接受凭据