DynamoDB getItem 仅包含 id (aws sdk)

Gia*_*rco 1 javascript amazon-web-services node.js amazon-dynamodb aws-sdk

有没有什么方法可以只使用id来获取一个或多个元素具有相同的 id)?而不使用alsoe 属性?name

  let params = {
  TableName: "TableName",
  Key: {
    id: { S: req.body.ProjectId },
    // name: { S: req.body.name }
  },
};

ddb.getItem(params, function (err, data) {
  if (err) {
    console.log("Error", err);
    res.send(err);
  } else {
    console.log("Success", data);
    res.send(data);
  }
});
Run Code Online (Sandbox Code Playgroud)

});

Nad*_*'El 5

您在问题中遗漏了一些重要信息,但我猜测这id是您的分区键,并且name排序键

在这种情况下,答案是肯定的 - 您可以id通过使用Query请求而不是请求来获取具有相同分区键的所有项目GetItem

请阅读有关如何正确使用的文档Query。特别要注意的是,aQuery理论上可以返回一个非常长的项目列表(它们具有相同id但不同的name),因此它是分页的,即,您可能需要多次调用它(以适当的方式)才能获取所有这些项目。