我将如何使用 DynamoDB DocumentClient 重写此查询?

How would I rewrite this query using the DynamoDB DocumentClient?

我正在控制台中测试查询,并希望在我的代码中实现它们。我很好奇如何在我的 Node.js 代码中得到这个。我认为它与 QueryFilter 有关,但我正在努力获得它。

let params = {
    TableName: tableName,
    KeyConditionExpression:
      'TimeId = :timeId and begins_with ( TypeKey , :typeKey) ',
    QueryFilter: ?,
    ExpressionAttributeValues: {
      ':timeId': `${year}-${week}`,
      ':typeKey': 'GA',
    },
  };

查询参数应如下所示

{
  "TableName": "tableName",
  "KeyConditionExpression": "#PK = :timeId And begins_with(#SK, :typeKey)",
  "FilterExpression": "contains(#homeTeam, :team)",
  "ExpressionAttributeValues": {
    ":timeId": {
      "S": "2020-12"
    },
    ":typeKey": {
      "S": "GA"
    },
    ":team": {
      "S": "Value"
    }
  },
  "ExpressionAttributeNames": {
    "#PK": "TimeId",
    "#SK": "TypeKey",
    "#homeTeam": "homeTeam"
  }
}

在学习为 DDB 组合查询时,查看 Amazons NoSQL Workbench。它有一个很好的 GUI 界面来构建操作(例如更新、删除、查询、扫描等),甚至会生成代码来执行操作。我发现它在像你面对这样的情况下非常有用。