我正在尝试从两列中获取总值(我已经完成了这项工作),然后获取这些值并从中创建百分比。在这种情况下,我有一个加权值和一个总值。我需要知道我的加权值占总价值的百分比。
我试过:
$result = mysqli_query($mysqli, "SELECT SUM(WEIGHTEDV / VALUE) FROM test.service");
$result = mysqli_query($mysqli, "SELECT WEIGHTEDV, VALUE, (WEIGHTEDV / VALUE) AS percent FROM test.service;
$result = mysqli_query($mysqli,"SELECT (WEIGHTEDV / VALUE)*10 AS Percent
FROM test.service");
还有一些我不太记得的尝试。
下面是更完整的代码:
登录和工作值总和
<?php
//LOGIN INFO
$db_host = 'localhost';
$db_user = 'root';
$db_pw = "********";
$database = "test";
//LOGIN VARIABLE
$mysqli = new mysqli($db_host, $db_user, $db_pw);
//VERIFY LOGIN INTEGRITY
if ($mysqli === false) {
die("Cannot connect to Database Server" . $mysqli->connect_error);
}
if (!mysqli_select_db($mysqli, $database)) {
die("Cannot select test Database" . $mysqli->connect_error);
}
$result = mysqli_query($mysqli, "SELECT SUM(VALUE) FROM test.service");
//PRINT ROWS
$fields_num = mysqli_num_fields($result);
while($row = mysqli_fetch_row($result)) {
foreach($row as $cell) {
echo "$$cell";
}
}
?>
加权工作和
<?php
$result = mysqli_query($mysqli, "SELECT SUM(WEIGHTEDV) FROM test.service");
//PRINT ROWS
$fields_num = mysqli_num_fields($result);
while($row = mysqli_fetch_row($result)) {
foreach($row as $cell) {
echo "$$cell";
}
}
?>
在我的表中当前总数的预期输出是
Expected Output: %54.8
测试变量:
VALUE: 38940.00
WEIGHTEDV:21345.00
两者都有一种类型(我将类型更改为int——相同的结果):
DECIMAL(12,2)
实际输出示例(直接从html表中输出):
65.000000100.0000000.00000050.00000025.000000100.00000050.000000
具有以上输出的当前代码:
$result = mysqli_query($mysqli,"SELECT (WEIGHTEDV / VALUE)*100 AS Percent
FROM test.service");
这让我很困惑。我确信这是我忽略的一件简单的事情。如能提供任何帮助,我将不胜感激,为什么我不能得到一个简单的%价值产出。