1

我对使用 DynamoDB 很陌生。我想查询 DynamoDB 数据库中的特定列值,并使用 NodeJS sdk 获取与该特定列值匹配的数据

在这种情况下,已部署 DynamoDB。

请建议如何使用 Node JS 实现此工作流程。

4

1 回答 1

0

最重要的是创建一个 JSON 对象,其中包含查询表所需的参数,在此示例中包括表名、 查询所需的ExpressionAttributeValues、使用这些值定义查询返回的项的KeyConditionExpression ,以及要为每个项目返回的属性值的名称。调用DynamoDB 服务对象的查询方法。这是使用 nodejs sdk 查询 dynamodb 的示例

// Load the AWS SDK for Node.js
var AWS = require('aws-sdk');
// Set the region 
AWS.config.update({region: 'REGION'});

// Create DynamoDB service object
var b = new AWS.DynamoDB({apiVersion: '2012-08-10'});

var params = {
  ExpressionAttributeValues: {
    ':s': {N: '2'},
    ':e' : {N: '09'},
    ':topic' : {S: 'PHRASE'}
   },
 KeyConditionExpression: 'Season = :s and Episode > :e',
 ProjectionExpression: 'Episode, Title, Subtitle',
 FilterExpression: 'contains (Subtitle, :topic)',
 TableName: 'EPISODES_TABLE'
};

b.query(params, function(err, data) {
  if (err) {
    console.log("Error", err);
  } else {

     data.Items.forEach(function(element, index, array) {
     console.log(element.Title.S + " (" + element.Subtitle.S + ")");
    });
  }
});
于 2018-05-20T10:50:53.747 回答