title: function based index vs column index oracle performance
body: <p>I already have an index named <strong>idx_MyTableColumn</strong> on table named MyTable.
  I ran a query </p>
  
  <pre><code>select * from MyTable where  MyTableColumn = 'AAA';
  </code></pre>
  
  <p>Then, I tried to run the explain plan for the above query, plan told me the cost of the query is 65701. No optimization needed.
  Explain plan as below:
   <a href="https://i.stack.imgur.com/o1umh.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/o1umh.jpg" alt="enter image description here"></a></p>
  
  <p>I dropped the index idx_MyTableColumn on MyTable table.</p>
  
  <p>Then, I placed a function based index named idx_UpperMyTableColumn on MyTable </p>
  
  <pre><code>create index idx_UpperMyTableColumn on MyTable( upper(MyTableColumn) );
  </code></pre>
  
  <p>Then,again I tried to run the explain plan for the newly created function based index query, this time total cost is 21634.
  Explain plan as below:
  <a href="https://i.stack.imgur.com/xIAWr.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/xIAWr.jpg" alt="enter image description here"></a></p>
  
  <p>I am so surprised to see this. Is function based index works faster then normal column based index? Or I am missing something?</p>