
01/02/2007, 05:52
|
| | Fecha de Ingreso: febrero-2007
Mensajes: 1
Antigüedad: 18 años, 1 mes Puntos: 0 | |
Redondeo raro 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. |