title: MySQL: Return 0 if row doen't exist
body: <p>I've been bashing my head on this for a while, so now I'm here :)  I'm a SQL beginner, so maybe this will be easy for you guys...</p>
  
  <p>I have this query:  </p>
  
  <pre><code>SELECT COUNT(*) AS counter, recur,subscribe_date  
  FROM paypal_subscriptions  
  WHERE recur='monthly' and subscribe_date &gt; "2010-07-16" and subscribe_date &lt; "2010-07-23"  
  GROUP BY subscribe_date  
  ORDER BY subscribe_date  
  </code></pre>
  
  <p>Now the dates I've shown above are hard coded, my application will supply a variable date range.</p>
  
  <p>Right now I'm getting a result table where there is a value for that date.  </p>
  
  <pre><code>counter |recur | subscribe_date   
  2    |    Monthly | 2010-07-18  
  3    |    Monthly | 2010-07-19  
  4    |    Monthly | 2010-07-20    
  6    |    Monthly | 2010-07-22
  </code></pre>
  
  <p>I'd like to return in the counter column if the date doesn't exist.</p>
  
  <pre><code>counter |recur | subscribe_date   
  0    |    Monthly | 2010-07-16  
  0    |    Monthly | 2010-07-17  
  2    |    Monthly | 2010-07-18  
  3    |    Monthly | 2010-07-19  
  4    |    Monthly | 2010-07-20    
  0    |    Monthly | 2010-07-21  
  6    |    Monthly | 2010-07-22  
  0    |    Monthly | 2010-07-23 
  </code></pre>
  
  <p>Is this possible?</p>