dynamodb 通过 id 数组获取所有项目

tha*_*sIT 2 node.js amazon-dynamodb dynamodb-queries

我有一个带有名称为 id 且类型为 HASH 的属性的表。我想从一组 id 中获取所有项目。

{
    TableName: `MyTable`,
    FilterExpression: 'id IN (:id)',
    ExpressionAttributeValues: { ':id': ids },
};
Run Code Online (Sandbox Code Playgroud)

我应该怎么做才能通过我的 ID 获取所有项目?

Ift*_*ani 5

您还可以使用DocumentClientbatchGet

const AWS = require('aws-sdk');
const documentClient = new AWS.DynamoDB.DocumentClient();

let queryParams = {RequestItems: {}};
queryParams.RequestItems['tableName'] = {
  Keys: [{'id': 'Value1'}, {'id': 'value2'}],
  ProjectionExpression: 'id' //define other fileds that you have Ex: 'id,name'
};

documentClient.batchGet(queryParams, function (err, data) {
  if (err) {
    console.log('failure:getItemByBatch data from Dynamo error', err);
  } else {
    console.log('success:getItemByBatch data from Dynamo data');
    console.log(data)
  }
});
Run Code Online (Sandbox Code Playgroud)