title: Is using IN (...) the most efficient way to randomly access a MySQL table?
body: <p>I have a table with 2.4M+ rows, and no indexes. I am 100% sure all the rows have one column (we'll call this <code>id</code>) that is unique, it is of type <code>VARCHAR(255)</code>.</p>
  
  <p>I now have a file of approximately 10,000 <code>id</code>'s and need to pull the entire row for each.</p>
  
  <p>Is using <code>IN(...)</code> my best option? Should I add an index?</p>
  
  <p>I was thinking for some thinking of something like this:</p>
  
  <pre><code>SELECT * FROM archive_table WHERE id IN('id1', 'id2', ... 'idn');
  </code></pre>
  
  <p>This is effectively archived data and only accessed by me every few weeks.</p>
  
  <hr>
  
  <p>System: MySQL 5.0.45
  Table: MyISAM</p>