代码之家  ›  专栏  ›  技术社区  ›  PerilOS

SQL查询的PHP回显

  •  1
  • PerilOS  · 技术社区  · 6 年前

    我的代码有问题。我不知道代码出了什么问题,也不知道我在哪里失败了。

    我基本上想从一列中计算数据库中多个数字的平均值。

    /*data calculation*/
    $calculation = "SELECT AVG(current) FROM offset_items";
    $calculation_result = mysqli_query($connect, $calculation);
    
    if($average = mysqli_fetch_assoc($calculation_result))
        {echo "Average: ".$average["current"]."<br>";}
    

    这里的问题是,我只会在“平均值:”之后显示一个空白。 但是如果我从查询中删除平均值,我会得到该DB列的所有结果。DB包含我在同一脚本中导入的数据,并显示这些数据以供测试。

    我得到以下错误,这是回声线:

    Notice: Undefined index: current in C:\MAMP\htdocs\Offset_Items.php on line 50
    

    我认为这里的问题是mysqli\u fetch\u assoc,但我不确定。 深入研究关于“未定义索引”的多个主题并没有解决我的问题。即使之前我将变量声明为NULL。

    我与编程脱节,但现在又拿起它来编写一些工作工具。所以如果你们能帮助我,我会非常感激的。

    1 回复  |  直到 6 年前
        1
  •  2
  •   axiac    6 年前

    尝试打印结果的PHP代码如下:

    $average = mysqli_fetch_assoc($calculation_result);
    echo "Average: ".$average["current"]."<br>";
    

    但生成结果集的查询不包含任何名为 current .

    使用 alias 对于表达式 AVG(current) SELECT 子句获取结果集中具有所需名称的列:

    SELECT AVG(current) AS current FROM offset_items