我在MySQL表中有一个varchar列。但是,列中的数据代表浮点值。我想知道是否有一种简单的方法可以将字符串转换为浮点数而不会丢失数据。问题是有一些前导零对我来说是复杂的。
示例数据:
"100"
"002"
"075"
"0300"
"0135"
需要转换为:
1.00
0.02
0.75
0.300
0.135
当我尝试通过乘以十进制进行转换时,前导零被剥离,002变为2.0而不是0.02。更复杂的是,一些字符串值是3个字符,有些是4个字符。
我使用的是PHP 5.4。
感谢您的帮助。
答案 0 :(得分:3)
select cast(insert(your_column, 2, 0, '.') as decimal(10, 3))
from your_table
答案 1 :(得分:0)
试试这段代码,只需要进行投射。希望它有所帮助。
$Myfloat = (float) $String;