【问题标题】:DynamoDB Table Count using Nodejs使用 Nodejs 的 DynamoDB 表计数
【发布时间】:2021-08-17 14:17:18
【问题描述】:

我需要使用 Node.js 获取 DynamoDB 表中的记录数?

简单来说,Node.js sn-p 怎么写?

aws dynamodb scan --table-name dev-xxx-table --select "COUNT"

试过https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/DynamoDB/DocumentClient.html#query-property

const params = {
    TableName: Table(),
    Select: COUNT
  }

  try {
    const count = await dynamoDb.query(params).promise()

但是得到了

"ReferenceError: COUNT is not defined",

我在文档中找不到任何相同的内容(或查找 DynamoDB 表的聚合)。任何线索将不胜感激。

【问题讨论】:

  • Nodejs sdk 有scan。那么究竟是什么问题呢?

标签: node.js amazon-web-services amazon-dynamodb aws-sdk dynamodb-queries


【解决方案1】:

在我看来,代码中有两个错误,首先您使用了错误的函数(query 而不是 scan),其次,您没有将 COUNT 作为字符串传递,而是作为变量,这就是您收到错误的原因。试试下面的代码(未经测试):

const params = {
  TableName: Table(),
  Select: "COUNT",
};
const count = await dynamoDb.scan(params).promise();

话虽如此,请注意这是一项非常昂贵且可能很慢的操作,您不希望在非常大的数据集上执行此操作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多