title: Is it *really* worth to use integer over varchar for a set of data?
body: <p>For example if I have a table User, I want to store gender or sex, I'll add a column like <code>sex</code>.</p>
  
  <p>Is it really worth to use an integer and then map it in my favorite programming language?</p>
  
  <p>Like <code>1 =&gt; 'Male'</code> and <code>2 =&gt; 'Female'</code></p>
  
  <p>Is there any performance reason to do that?</p>
  
  <p>Or could I safely use a varchar which <em>more</em> meaning with 'female' or 'male' almost like I was using mysql <code>ENUM</code> ? </p>
  
  <p><strong>Edit</strong>: I here and there that it is sometimes better, sometimes it doesn't matter, so I more looking for benchmark or something over a "it is better" answer.</p>
  
  <p>I mean I think using varchar is actually more meaningfull than an integer, and I would use an integer only if performance are more than 0.3% or something.</p>