dynamodb:仅使用哈希键查询

时间:2016-11-19 21:06:51

标签: node.js amazon-dynamodb

我有这张桌子:

  • DomainId string HashKey
  • EmailId字符串RangeKey

我想知道它是否可能仅使用HashKey查询此表,如下所示:

var AWS = require("aws-sdk");   
var client = new AWS.DynamoDB.DocumentClient();
var dm = 'infodinamica.cl';

//Set params
var params = {
    TableName : 'table-name',
    KeyConditionExpression: "DomainId = :dm",       
    ExpressionAttributeValues: {
        ":dm": dm
    },
    Select: 'COUNT'
};

client.query(params, (err, data) => {
    if(err)
        console.log(JSON.stringify(err, null, 2));
    else
        console.log(JSON.stringify(data, null, 2));
}

ps:请注意,此表包含HashKey和RangeKey。

1 个答案:

答案 0 :(得分:3)

是的,可以使用Hash Key仅使用query API来查询数据。

  

使用KeyConditionExpression参数提供特定值   对于分区键。 Query操作将返回所有   具有该分区键值的表或索引中的项。您可以   通过指定a,可以选择缩小Query操作的范围   在KeyConditionExpression中对键值和比较运算符进行排序。   您可以使用ScanIndexForward参数来获取结果   或按逆序排序。