title: Does higher rows count in mysql explain means good or bad?
body: <p>I have one old MyISAM table where when I submit some count query, table gets locked. If I do the same query, on the same InnoDB table, query gets executed fast. The problem is, the old MyISAM table is still used in production and is under heavy load, while the new one is not. </p>
  
  <p>Now we come to my problem and question. When I do explain on query's executed in both tables I get some result that confuses me.</p>
  
  <p>Here is the query that I am executing in both tables :</p>
  
  <pre><code>SELECT COUNT(*)
  FROM table
  WHERE vrsta_dokumenta = 3
      AND dostupnost = 0
  </code></pre>
  
  <p>Here is the explain from the old MyISAM table:</p>
  
  <pre><code>id select_type table     type possible_keys         key               key_len ref    rows   Extra    
  1  SIMPLE     old_table  ref idx_vrsta_dokumenta idx_vrsta_dokumenta     1   const 564253  Using where 
  </code></pre>
  
  <p>And here is the explain from the new InnoDB table:</p>
  
  <pre><code>id select_type   table  type    possible_keys         key           key_len  ref    rows   Extra     
  1  SIMPLE      new_table ref idx_vrsta_dokumenta idx_vrsta_dokumenta   1    const 611905 Using where
  </code></pre>
  
  <p>As you can see the rows count in new table is higher than in old.</p>
  
  <p>So in the case that higher number is bad, does this mean that query on the new table will be slower once it is fully in use ?</p>
  
  <p>In case the higher number is good, then maybe that is the reason why new table is faster, and MyISAM gets locked after some time of execution.</p>
  
  <p>Anyway, what is correct? What does this rows count mean?</p>
  
  <p>EDIT: the old table has twice more columns than the new one. Since the old is has been split into 2 tables.</p>