如何在 DynamoDB 中查询 begin_with 来获取主键?

Fas*_*ous 1 python amazon-dynamodb boto3

使用 boto3.dynamodb.condition.Key 的 begins_with 方法过滤结果的最佳方法是什么?

import boto3
from boto3.dynamodb.conditions import Key

dynamodb = boto3.resource('dynamodb')
table = dynamodb.Table('MyTable')
response = table.query(KeyConditionExpression=Key('myPrimaryKey').begins_with('americas'))
Run Code Online (Sandbox Code Playgroud)

结果虽然条件支持begins_with,但是查询不支持。不能在主键或排序键上使用begins_with吗?

Set*_*gan 8

DynamoDB 中的主键可以是简单的,也可以是复合的

简单主键由分区键和排序键组成。

复合主键同时具有分区键排序键。

您只能使用begins_with排序键,而不能使用分区键。