title: number rounding to nearest even number with given precision in oracle
body: <p>I am trying to round a number in oracle the same way as python does: to nearest even number (to a given precision):</p>
  
  <pre><code>python:
  round(0.3125) -&gt; 0.312
  
  Oracle:
  select round(0.3125, 3) from dual -&gt; 0.313
  </code></pre>
  
  <p>Oracle can do this by specifying the input as float when rounding to integers:</p>
  
  <pre><code>select round(2.5f) from dual -&gt; 2
  
  select round(2.5)  from dual -&gt; 3
  </code></pre>
  
  <p>But:</p>
  
  <pre><code>select round(0.3125f, 3) from dual -&gt; 0.313 and not 0.312.
  Any ideas?
  </code></pre>