MySQL浮点(7,2)到PHP浮点

MySQL浮点(7,2)到PHP浮点,php,pdo,floating-point,Php,Pdo,Floating Point,我(使用PHPPDO)从MySQL获取一个值(以有符号浮点(7,2)格式存储) 示例代码: $qry = 'SELECT hours FROM sample WHERE filter=?;'; $stmt = $db->prepare($qry); $stmt->execute(array($filter)); while($row = $stmt->fetch(PDO::FETCH_ASSOC)) { echo $row['hours']; } 从数据库中获取此数据

我(使用PHPPDO)从MySQL获取一个值(以有符号浮点(7,2)格式存储)

示例代码:

$qry = 'SELECT hours FROM sample WHERE filter=?;';
$stmt = $db->prepare($qry);
$stmt->execute(array($filter));
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
    echo $row['hours'];
}
从数据库中获取此数据的最佳方法是什么? 我读过PHP中的浮点近似问题。 因此,我想或许可以将SQL更改为:

SELECT (hours * 100) as butSoExpensiveOnDatabase etc...
或者在PHP中使用
round
number\u格式。
你们有什么建议?为什么

更改表格结构不是一个选项

(原因:我需要支持旧的遗留代码+没有时间+没有预算)

您可以这样做

"SELECT round(hours, 2) FROM sample WHERE filter=?;"

这是可行的,但不是有一个PHP解决方案,我不喜欢让mysql服务器做很多事情calculations@Terence在MySQL中使用数学函数比让PHP这样做要好。
"SELECT round(hours, 2) FROM sample WHERE filter=?;"