仅使用 JavaScript 从 DynamoDB 中的行中检索特定数据

weg*_*swa 2 javascript amazon-web-services amazon-dynamodb


使用 DynamoDb 和此处提供的“读取”功能我将如何仅检索特定项目(例如,仅名字、姓氏和城市)
我可能需要添加某种过滤器,但是我无法找到任何我能找到的东西用。

这是我的表结构(以 bpNumber 为主键):

Item:{
            "salutationCode": "02",
            "lastName1": "Berg",
            "firstName": "Anne",
            "street": "Am Dächle",
            "streetNumber": "22/2",
            "zipcode": "33425",
            "countryCode": "DE",
            "city": "Hausen",
            "bpNumber": 222,
            "dateOfBirth": "1955-07-01",
            "attri": [
              {
                "attri1":"nonono"
              },
              {
                "attri2": "yeayeayea"
              }
            ]

        }
Run Code Online (Sandbox Code Playgroud)

这是我正在使用的“读取”方法:

read(){
        var docClient = new AWS.DynamoDB.DocumentClient()

        var table = "businessPartnersData";

        var bpNumber = 222;

        var params = {
            TableName: table,
            Key:{
                "bpNumber": bpNumber
            }
        };

        docClient.get(params, function(err, data) {
            if (err) {
                console.error("Unable to read item. Error JSON:", JSON.stringify(err, null, 2));
            } else {
                console.log("GetItem succeeded:", JSON.stringify(data, null, 2));
            }
        });
  }
Run Code Online (Sandbox Code Playgroud)

谢谢你的时间!

Pet*_*ema 8

您可以使用 ProjectionExpression:

params.ProjectionExpression = "firstname, lastname, city";
Run Code Online (Sandbox Code Playgroud)

对于所有项目,这只会在结果集中返回这些属性。