title: How to have SQL INNER JOIN accept null results
body: <p>I have the following query:</p>
  
  <pre class="lang-sql prettyprint-override"><code>SELECT TOP 25 CLIENT_ID_MD5, COUNT(CLIENT_ID_MD5) TOTAL 
  FROM dbo.amazonlogs 
  GROUP BY CLIENT_ID_MD5 
  ORDER BY COUNT(*) DESC;
  </code></pre>
  
  <p>Which returns:</p>
  
  <pre><code>283fe255cbc25c804eb0c05f84ee5d52    864458
  879100cf8aa8b993a8c53f0137a3a176    126122
  06c181de7f35ee039fec84579e82883d    88719
  69ffb6c6fd5f52de0d5535ce56286671    68863
  703441aa63c0ac1f39fe9e4a4cc8239a    47434
  3fd023e7b2047e78c6742e2fc5b66fce    45350
  a8b72ca65ba2440e8e4028a832ec2160    39524
  ...
  </code></pre>
  
  <p>I want to retrieve the corresponding client name (FIRM) using the returned MD5 from this query, so a row might look like:</p>
  
  <pre><code>879100cf8aa8b993a8c53f0137a3a176    126122    Burger King
  </code></pre>
  
  <p>So I made this query:</p>
  
  <pre class="lang-sql prettyprint-override"><code>SELECT a.CLIENT_ID_MD5, COUNT(a.CLIENT_ID_MD5) TOTAL, c.FIRM 
  FROM dbo.amazonlogs a 
    INNER JOIN dbo.customers c 
      ON c.CLIENT_ID_MD5 = a.CLIENT_ID_MD5
  GROUP BY a.CLIENT_ID_MD5, c.FIRM 
  ORDER BY COUNT(*) DESC;
  </code></pre>
  
  <p>This returns something like:</p>
  
  <pre><code>879100cf8aa8b993a8c53f0137a3a176    126122    Burger King
  06c181de7f35ee039fec84579e82883d    88719     McDonalds
  703441aa63c0ac1f39fe9e4a4cc8239a    47434     Wendy's
  3fd023e7b2047e78c6742e2fc5b66fce    45350     Tim Horton's
  </code></pre>
  
  <p>Which works, except I need to return an empty value for c.FIRM if there is no corresponding FIRM for a given MD5. For example:</p>
  
  <pre><code>879100cf8aa8b993a8c53f0137a3a176    126122    Burger King
  06c181de7f35ee039fec84579e82883d    88719     McDonalds
  69ffb6c6fd5f52de0d5535ce56286671    68863
  703441aa63c0ac1f39fe9e4a4cc8239a    47434     Wendy's
  3fd023e7b2047e78c6742e2fc5b66fce    45350     Tim Horton's
  </code></pre>
  
  <p>How should I modify the query to still return a row even if there is no corresponding c.FIRM?</p>