title: Is there a way to query multiple hash keys in DynamoDB?
body: <p>Is there a way to query multiple hash keys using a single query in Amazon's AWS SDK for Java?  </p>
  
  <p>Here's my issue; I have a DB table for project statuses.  The Hash Key is the status of a project (ie: new, assigned, processing, or complete).  The range key is a set of project IDs.  Currently, I've got a query setup to simply find all the projects listed as a status(hash) of "assigned" and another query set to look for a status of "processing".  Is there a way to do this using a single query rather than sending multiple queries for each status I need to find?  Code below:</p>
  
  <pre><code>    DynamoDBMapper mapper = new DynamoDBMapper(new AmazonDynamoDBClient(credentials));
      PStatus assignedStatus = new PStatus();
      assignedStatus.setStatus("assigned");
      PStatus processStatus = new PStatus();
      processStatus.setStatus("processing");
  
      DynamoDBQueryExpression&lt;PStatus&gt; queryAssigned = new DynamoDBQueryExpression&lt;PStatus&gt;().withHashKeyValues(assignedStatus);
      DynamoDBQueryExpression&lt;PStatus&gt; queryProcessing = new DynamoDBQueryExpression&lt;PStatus&gt;().withHashKeyValues(processStatus);
  
      List&lt;PStatus&gt; assigned = mapper.query(PStatus.class, queryAssigned);
      List&lt;PStatus&gt; process = mapper.query(PStatus.class, queryProcessing);
  </code></pre>
  
  <p>So basically, I'd like to know if it's possible to eliminate the <code>queryAssigned</code> and <code>assigned</code> variables and handle both <code>assignedStatus</code> and <code>processStatus</code> via the same query, <code>process</code>, to find projects that are not new or complete.</p>