title: Weird Float Rounding - different results for different tables using the same value
body: <p>I'm trying to reconcile <code>float</code> data between two tables, and I'm coming across some weird behavior with the <code>ROUND</code> function.  For example, the underlying value in the table is 4754792087.72.</p>
  <p>For one table, <code>ROUND(fieldName,5,1)</code> will result in the expected 4754792087.72.</p>
  <p>For another table, the same function call on the same value will result in 4754792087.71999 - it somehow adds precision.  For this table if I try <code>round(convert(numeric(28,10),fieldName),5,1)</code> I still get the 4754792087.71999 value, and the same happens with <code>cast</code> instead of <code>convert</code> or using <code>decimal</code> instead of <code>numeric</code>.</p>
  <p>I realize the <code>float</code> datatype is weird and non-precise, but converting to <code>numeric</code> and <code>decimal</code> doesn't resolve the issue.  There weren't any obvious differences between the setup of the two tables that I could see.</p>
  <p>What am I missing here?</p>