python - 使用 boto3 dynamodb 客户端时出现 FilterExpression 语法错误

标签 python amazon-web-services amazon-dynamodb boto3

我正在尝试使用 boto3 的低级客户端 api 查询 dynamodb。

   response = client.query(
        TableName='People',
        IndexName='country-index',
        KeyConditionExpression='country = :country',
        FilterExpression="attribute_not_exists('age') AND attribute_not_exists('address')",
        ExpressionAttributeValues={
            ":country":{"S": "USA"}
        },
        Limit=100
    )

我收到语法错误:

An error occurred (ValidationException) when calling the Query operation: Invalid FilterExpression: Syntax error; token: "'", near: "('age"

boto3 中的文档重定向至 Amazon 开发人员指南。我无法找到 client.query(...) 的语法。那里列出的示例用于使用 table.query(...)

最佳答案

请按如下所述更改 FilterExpression

FilterExpression="attribute_not_exists(age) AND attribute_not_exists(address)",

关于python - 使用 boto3 dynamodb 客户端时出现 FilterExpression 语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43079957/

相关文章:

node.js - 如何使用 DynamoDB 批量删除?

python - 如何使用pymysql将日志上传到mysql

python - Cython:在具有融合类型的一个参数中传递多个 numpy 数组

amazon-web-services - AWS Lambda 函数正在无限地从运动流中读取记录

java - 如何将新的键值对放入 DynamoDB 中的映射中? ( java )

java - AWS 多区域 ElastiCache 同步

python - 使用 python 切片 CSV 中的特定字符

java - 不同语言中模运算符的差异

python - 在亚马逊 lambda python 中运行 selenium webdriver

java - 将多部分文件上传到 AWS 而无需在本地保存