title: MySQL SELECT where boolean field is NULL or false
body: <p>OK I must be missing something really simple here. I just want to return all records from a table where the user_id matches (easy!) and the 'paid' field is either NULL or 0. My 'paid' field is a TinyInt (1).</p>
  
  <p>My CakePHP model code is:</p>
  
  <pre><code>$workingRecord = $this-&gt;find('first',array(
      'conditions'=&gt;array(
          'Subscription.user_id'=&gt;$userId,
          array('not' =&gt; array('Subscription.paid' =&gt; true)) // Not True, to catch both false or NULL values
      )
  ));
  </code></pre>
  
  <p>The SQL generated by CakePHP is like this:</p>
  
  <pre><code>SELECT `Subscription`.`id`, `Subscription`.`paid` FROM `subscriptions` AS `Subscription` WHERE `Subscription`.`user_id` = 3 AND NOT (`Subscription`.`paid` = '1') LIMIT 1
  </code></pre>
  
  <p>Common sense would say this should work. The problem is that that SQL will return rows containing 0 in the 'paid' column, but will never return NULLs.</p>
  
  <p>Is there any way to return zero's and NULLs in the one stroke, without using 'or'?</p>
  
  <p>Thanks in advance.</p>