title: get count number of records which respectively exist in another table with null value also
body: <p>i have two tables. 'listing_messages' and 'listing_message_history'.  </p>
  
  <pre><code>listing_messages  
  =============  
  message_id   listing_id    listing_user   third_party_user  
  1            162           7              32  
  2            162           7              33  
  3            162           7              12  
  
  listing_message_history  
  ======================  
  listing_message_history   message_id  is_checked  
  1                         1           0  
  2                         1           1  
  3                         1           1  
  4                         2           0  
  5                         2           1  
  6                         3           0  
  </code></pre>
  
  <p>Search criteria==> listing_user=7, is_checked=1<br>
  <strong>I want result..</strong>  </p>
  
  <pre><code>message_id    count_of_unread_message_history  
  12         
  2             1    
  3             0   
  </code></pre>
  
  <p>I have made a query is </p>
  
  <pre><code>SELECT count(`lmh`.`message_history_id`) AS COUNT,
         `lmh`.`message_id`
  FROM `listing_message_history` AS `lmh`
  LEFT JOIN `listing_messages` AS `lm` ON `lmh`.`message_id` = `lm`.`message_id`
  WHERE `lm`.`third_party_user`=7
    AND `lmh`.is_checked=1
  GROUP BY `lm`.`message_id`
  </code></pre>
  
  <p>but it does not returns message_id with count = 0 which message_id do not   have is_checked=1  </p>