title: In SQL, what's the difference between count(column) and count(*)?
body: <p>I have the following query:</p>
  
  <pre><code>select column_name, count(column_name)
  from table
  group by column_name
  having count(column_name) &gt; 1;
  </code></pre>
  
  <p>What would be the difference if I replaced all calls to <code>count(column_name)</code> to <code>count(*)</code>?</p>
  
  <p>This question was inspired by <a href="https://stackoverflow.com/questions/59232/how-do-i-find-duplicate-values-in-a-table-in-oracle">How do I find duplicate values in a table in Oracle?</a>.</p>
  
  <hr>
  
  <p>To clarify the accepted answer (and maybe my question), replacing <code>count(column_name)</code> with <code>count(*)</code> would return an extra row in the result that contains a <code>null</code> and the count of <code>null</code> values in the column.</p>