Buenos días,
 
quería ver si alguno me podeis dar una explicación a algo que he visto que me sucede, que supongo será algo conocido pero no encuentro solución.
 
Vamos al tema:
 
creo una base de datos con un campo float, inserto registros en ella, y los consulto...
 
mysql> select campo from tabla;
 
y obtengo:
...
|        0 |
|      1.8 |
|      1.3 |
|      1.1 |
|        1 |
|        1 |
|      0.9 |
|      0.8 |
|      1.3 |
+----------+
5025 rows in set (0,08 sec)
 
 
pero si hago...
 
mysql> select campo from tabla where campo="1.3";
Empty set (0,06 sec)
 
No obtengo ningun resultado.
 
Pero si hago:
 
mysql> select campo from tabla where campo<'1.3' and campo>'1.2999999';
 
Si obtengo resultados,
 
pero con  campo>'1.29999999' vuelvo a no obtener resultados,
 
lo que me hace llegar a la conclusión de que mysql representa el float 1.3 con un número entre 1.2999999 y 1.29999999.
 
Alguien me puede explicar por qué, o como solucionarlo.
 
Muchas gracias. 
   
 


