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
asked 2 months ago70 views
1 Answer
0
Accepted Answer

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.

answered 2 months ago
  • thanks Pete

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions