title: Why does MySQL round floats way more than expected?
body: <pre><code>UPDATE some_table SET some_float_field=1919.987 WHERE id=123
  
  SELECT * FROM some_table WHERE id=123
  </code></pre>
  
  <p>where some_float_field is a field defined as "float" (without any specific size values).</p>
  
  <p>The expected resulting value would be 1919.987; instead, it is rounded to 1919.99</p>
  
  <p>Why? A 32bit (single precision) float has enough precision for storing that correctly!</p>