Query DynamoDB with different PK values

0

I am trying to use a query with KeyConditionExpression in Boto3 to query a DynamoDB table. I am trying to return all the records using the following sudo expression

(PK=X AND SK=Y) OR (PK=A AND SK=B)

OR

KeyConditionExpression=((Key("PK").eq(f"USERID#{user_id}") & Key("SK").eq(f"PROJECTID#{project_id}")) | (Key("PK").eq(f"USERID#{user_id}PROJECTID#{project_id}") & Key("SK").begins_with("LAYERID#")))

PK is the primary key and SK is the Sort Key. Does this need to be 2 separate queries and the results join or can it be done in one?

alexis
已提问 3 个月前82 查看次数
1 回答
0
已接受的回答

You must specify a single value of the partition key in each Query request. So yes - in this case, you can make both Query calls in parallel, and then merge the result set on the application side.

已回答 3 个月前
  • thanks Pete

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则