我有两个,希望是基本的数字问题。
首先,我在MySQL上使用十进制数据类型将速度或高度等数据设置为一个小数位,如decimal(4,1)
我的问题是,对于没有dp的数字,它仍然显示.0 - 什么我得到的是'309.0',但我想要的是'309'。我需要更改什么来隐藏'.0'?
其次我有一个显示固定数字的整数数据类型。许多数字都是0零,但这些数字被视为空并且不显示。如何强制显示0? (我无法对此进行表更改,因为其他列的零值是空值。只有这一列需要显示零。)
对于这两个问题,PHP都用于显示结果。
编辑:我用来显示结果的代码。最上面的一个不需要显示.0底部需要显示零。
Length:</b> %sft' . PHP_EOL, $row2['length'])
Inversions:</b> %s' . PHP_EOL, $row2['inversions'])
答案 0 :(得分:4)
我相信一个偷偷摸摸的伎俩是,如果你在数字的末尾添加0,它会删除.0000等。
示例:
$number = 150.00
$number = $number + 0; //should echo 150
$other_number = 150.500;
$other_number += 0; //should echo 150.5
至于另一个,你可以简单地连接零,因为似乎不需要计算
答案 1 :(得分:0)
要检查尾随零,可以使用以下命令确保float和integer值相同:
$num = (floatval($num)==intval($num)) ? intval($num) : floatval($num);
然后对于null值,您可以使用coalesce(yourColumn, 0) as yourColumn
获取列值(如果不为null)或返回0作为值..