title: HQL to get elements that possess all items in a set
body: <p>Currently, I have an HQL query that returns all Members who possess <strong>ANY</strong> Award from a set of specified Awards:</p>
  
  <pre><code>from Member m left join m.awards as a where a.name in ("Trophy","Ribbon");
  </code></pre>
  
  <p>What I now need is HQL that will return all Members who possess <strong>ALL</strong> Awards specified in the set of Awards. </p>
  
  <p>So, assuming this data:</p>
  
  <pre><code>Joe has Trophy, Medal
  Sue has Trophy, Ribbon
  Tom has Trophy, Ribbon, Medal
  </code></pre>
  
  <p>The query above would return Joe, Sue, and Tom because all three possess at least one of Trophy or Ribbon. But I need to return only Sue and Tom, because they are the only ones who possess all of the specified awards (Trophy and Ribbon).</p>
  
  <p>Here's the class structure (simplified):</p>
  
  <pre><code>class Member {
    private String name;
    private Set&lt;Award&gt; awards;
  }
  class Award {
    private String name;
  }
  </code></pre>