title: Limiting join to full set instead of subset
body: <p>I'm attempting to get a list of IDs for posts which are visible only to certain users. My current statement is this:</p>
  
  <pre><code>SELECT `p`.`id` 
  FROM   `posts` AS `p` 
         INNER JOIN `post_visibilities` AS `pv` 
                 ON `pv`.`post_id` = `p`.`id` 
  WHERE  `pv`.`user_id` IN ( 1, 2, 3, 4 ); 
  </code></pre>
  
  <p>this somewhat works, but the <code>IN()</code> clause is acting somewhat like a subset, and I'm getting posts returned which are visible by those four users <em>and</em> other users. I need to find posts which are visible to <em>only</em> those four users.</p>