title: MySQL: Find Records Without a Match (JOIN/IS NULL)
body: <p>I'm trying to build a query for these simplified MySQL tables:</p>
  
  <pre><code>==campaigns==  
  id  
  content  
  
  ==lists==  
  id  
  name  
  
  ==subscriptions==  
  id  
  list_id   
  subscriber_id  
  
  ==events==  
  id  
  campaign_id
  list_id
  subscription_id
  
  ==triggers==
  id
  campaign_id
  list_id
  time_to_send
  </code></pre>
  
  <p>I want to find the subscription_id for all subscriptions without a corresponding event for a certain campaign_id.</p>
  
  <p>This query returns all subscriptions without an event:</p>
  
  <p><code>SELECT *
  FROM subscriptions AS s
  LEFT JOIN events AS e
  ON s.id = e.subscription_id
  WHERE e.subscription_id IS NULL</code></p>
  
  <p>But, I want to return all subscriptions either <strong>without an event for a particular campaign</strong> or <strong>without an event for a particular trigger</strong>.</p>
  
  <p>How would I do this?</p>