gpt4 book ai didi

php - PHP MYSQL 中的 SUM 和循环

转载 作者:行者123 更新时间:2023-11-29 20:00:32 25 4
gpt4 key购买 nike

嗯,我目前正在 php 中研究 SUM 和循环数组。

这是我的 PHP 代码:

<?php

require_once 'koneksi.php';

if(isset($_POST['id_gejala'])) {

$val = $_POST['id_gejala'];

for($i="0"; $i < sizeof($val); $i++) {

$seldata = mysqli_query($con, "SELECT a.`kode_evidence`, a.`kode_hipotesa`, a.`nilai_evidence`, b.`probabilitas`, SUM(a.`nilai_evidence`) AS `total_evidence` FROM `evidence` AS a INNER JOIN hipotesa AS b ON a.`kode_hipotesa` = b.`kode_hipotesa` WHERE `kode_evidence` ='".$val[$i]."' GROUP BY a.`kode_hipotesa` HAVING COUNT(*) >= 1 ") or die (mysqli_error($con));

while($data1=mysqli_fetch_assoc($seldata)){
$data[]=$data1;
}
}
}

$json = json_encode($data);
echo $json;

?>

当我 echo $json 时,我已经成功生成了 json 响应,这是我得到的响应:

[
{
"kode_evidence":"1",
"kode_hipotesa":"1",
"nilai_evidence":"0.9",
"probabilitas":"0.09",
"total_evidence":"0.8999999761581421"
},
{
"kode_evidence":"2",
"kode_hipotesa":"1",
"nilai_evidence":"0.4",
"probabilitas":"0.09",
"total_evidence":"0.4000000059604645"
}
]

在我的 php 代码中,sql 变量中的 GROUP BY 和 HAVING COUNT 命令不起作用,我仍然收到 2 个响应,并且结果不会对 nilai_evidence 求和。

我只需要从发布中获取 1 个结果,并进行查询的 SUM 计算。

任何帮助将不胜感激,谢谢。

最佳答案

您仅对您在 group by 中设置的列的一部分使用聚合函数..

这可以检索此列的不相关值,respctec 是聚合函数的值

对于您的查询,这些列中的列的值可能是相同的
当您可以使用(假)聚合函数来避免返回超过一行时

  "SELECT 
min(a.`kode_evidence`)
, a.`kode_hipotesa`
, min(a.`nilai_evidence`)
, min(b.`probabilitas`)
, SUM(a.`nilai_evidence`) AS `total_evidence`
FROM `evidence` AS a
INNER JOIN hipotesa AS b ON a.`kode_hipotesa` = b.`kode_hipotesa`
WHERE `kode_evidence` ='".$val[$i]."'
GROUP BY a.`kode_hipotesa`
HAVING COUNT(*) >= 1 ") or die (mysqli_error($con));

关于php - PHP MYSQL 中的 SUM 和循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40553479/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com