title: Why does TSQL on Sql Server 2000 round decimals inconsistently?
body: <p>I'm trying to calculate percent off values for dollar amounts. At 50%, sometimes you get half a penny, and I need to round it to the nearest cent.</p>
  
  <p>In Sql, my calculation is as follows:</p>
  
  <p><code>round(retail * 0.5, 2, 0)</code></p>
  
  <p>If I take the following values I get different results:</p>
  
  <ul>
  <li>4.39</li>
  <li>2.49</li>
  </ul>
  
  <p>Unrounded I get:</p>
  
  <ul>
  <li>4.39 --> 2.195</li>
  <li>2.49 --> 1.245</li>
  </ul>
  
  <p>When rounded I get:</p>
  
  <ul>
  <li>2.195 --> 2.19</li>
  <li>1.245 --> 1.25</li>
  </ul>
  
  <p>I'm told this is a form of "banker's rounding", but it seems like the value that is affecting the rounding direction is the integer value. </p>
  
  <p>My problem is that I expect the top value to round to 2.20. If this is indeed bankers rounding, and it is affected by the integer value here, does anyone have an example for preventing this behavior. If it is not bankers rounding, can someone please provide an explanation and potentially a solution to just get normal rounding behavior?</p>
  
  <p>Thanks in advance!</p>