No, parece que el tema no va por ahí, con mysql> select campo from tabla where campo=1.3; Empty set (0,02 sec) sigo sin tener resultados, no entiendo que mysql guarde un float como una aproximación a este. El Jueves, 2 de Noviembre de 2006 09:27, escribió:
Si estas utilizando Float no es necesario poner el caracter " ' "
Tendrias que hacer una consulta del tipo:
select campo from tabla where campo=1.3;
No es la primera vez que a mi me ha pasado :-)
Aunque esto depende también de la versión que estés utilizando. Hay que tener cuidado cuando de actualiza si no te puede pasar cosas como:
Mysql V5.0.24a Te permite crear una tabla con un campo
<Mycampo> BLOB defalult ''
En el Mysql V5.0.25 ya no te deja. :-D :-D
El Jueves, 2 de Noviembre de 2006 08:20, Enrique escribió:
Buenos días,
no se si este es el sitio más correcto para hacer esta pregunta, pero como se que bastantes usais mysql, 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.