![]() |
Convertir de Texto a Float
Buenas chicos, les escribo para ver si me pueden dar una mano con esto.
Tengo una tabla en sql server 2005 de un proveedor externo de software. Mi problema es el siguiente: Todos los campos de la tabla son tipo VARCHAR, y lo que necesito es terminar un software para sacar unos reportes de las tablas de ese software pero tengo que hacer un SUM de un campo string. he intentado con la siguiente sentencia pero me da el siguiente error: Error converting data type varchar to real. el campo puede ser asi ' 495.00 ' tipo varchar. Cualquier informacion se las agradeceré. Gracias anticipadas |
Interesante la SQL... :p (EDITO: Aclaro que hasta hace poco no se veía bien.)
Creo que eso no es posible. Al menos en Interbase sólo se puede hacer Sum a valores numéricos, e imagino que en todos los SGDB será así. Lo que podrías hacer es recuperar los datos con una query, recorrerla, hacer la conversión y sumar. O también, redefinir los campos de la BD, si es que puedes, por otros mas apropiados. |
|
Hola...
mira.. probe esto en SQL Server 2005 y me funciono ok
donde Per_NCta es de tipo Varchar de 15 Suerte...:p:D[/color][/size] |
Hola...
hehe... segui realizando algunas pruebas... ahora con decimales y me arrojo esto
y los resultados fueron los siguientes 123457 123456.652 123456.652 por lo cual,, convertir una variable de tipo Varchar a Float, no obtendrás los decimales, deberas convertirlos a Decimal... suerte...:p:D |
esta prfecto lo que me han dicho, pero......
el campo a parte de ser varchar, tiene como separador de miles una coma (,) y existen campo (' 1,490.00 ') con espacios delante y detras..... Me da el error cuando encuentra un registro con una coma.. muchas gracias por sus respuestas :confused: |
Hola
lo que tendrias que hacer entonces es : o cambiar tu separador de miles a coma, o eliminar la coma del string para eliminar la coma del string.. deberas utilizar la sgte funcion en D7 AnsiReplaceStr Ejem.
lo que hice fue reemplazar (eliminar) la coma "," por "" (nada) espero que te sirva :p:D |
| La franja horaria es GMT +2. Ahora son las 16:32:14. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi