Python 等同于在DynamoDB中不传递主键的select查询?

Python 等同于在DynamoDB中不传递主键的select查询?,python,mysql,amazon-web-services,amazon-dynamodb,boto3,Python,Mysql,Amazon Web Services,Amazon Dynamodb,Boto3,在DynamoDB中,以下查询的等价物是什么: select field1,fields2 from table_name where filter1 == 'filter_value' 请注意filter1不是这里的主键,它可以是表中的任何列 从我所读到的内容来看,我知道它可以使用scan()操作实现,但它将返回整个数据,而不仅仅是我们指定的字段。 另外,我到处都读到,我们应该避免使用scan(),因为它是一项繁重的操作(扫描整个表)。使用AWS命令行界面,您可以这样做 aws dynamo

在DynamoDB中,以下查询的等价物是什么:

select field1,fields2 from table_name where filter1 == 'filter_value'
请注意filter1不是这里的主键,它可以是表中的任何列

从我所读到的内容来看,我知道它可以使用scan()操作实现,但它将返回整个数据,而不仅仅是我们指定的字段。

另外,我到处都读到,我们应该避免使用scan(),因为它是一项繁重的操作(扫描整个表)。

使用AWS命令行界面,您可以这样做

aws dynamodb scan \
     --table-name table_name\
     --projection-expression "field1,fields2" \
     --filter-expression "filter1 = :filter_value"\
扫描总是读取数据库中的每一行。过滤器表达式只是限制返回给您的内容。默认情况下,您将返回每个项目的所有属性(“列”),但您可以使用投影表达式限制这些属性

在索引属性上搜索时,可以使用查询

有关信息,请在和上签出文档