PHP/MySQL 从表中选择所有行并显示具有最低值的列值

标签 php mysql

我正在尝试运行 SQL 查询以从表中选择所有行,然后显示每行具有最低值的列。

例如,让我们从 row1 开始...

columns1, column2, column3, column4

该行的最低值位于column3中,因此我需要在row2column4<上回显column3 具有最低值,因此应显示该行的 column4

我确实尝试过这段代码:

$sql="SELECT * from callplanmeta ";
$rs=mysql_query($sql,$conn) or die(mysql_error());
while($result=mysql_fetch_array($rs))
{
    $sql2="SELECT *, MIN(NULLIF(".$result["callplanname"].",0)) as number2 from callplandata ";
    echo $sql2;
    $rs2=mysql_query($sql2,$conn) or die(mysql_error());
    while($result2=mysql_fetch_array($rs2))
    {
        echo $result2["description"].' - '.number_format($result2["number2"],2).'<br><br>';
    }
}

但是我后来意识到它的做法是错误的,并且只显示 1 行的最低值

callplandata 表中的列名称与 callplanmeta 表中的 callplanname 列匹配

callplandata 表中的列是动态的,因此它们一直在变化,并且不断添加更多列

最佳答案

你也可以用这个得到结果

选择 ID, 当 COLUMN1 <= COLUMN2 且 COLUMN1 <= COLUMN3 THEN COLUMN1 时的情况 当 COLUMN2 <= COLUMN1 且 COLUMN2 <= COLUMN3 时,则 COLUMN2 ELSE COLUMN3 END AS 最小 来自表名

您可以获得任意数量的列的结果。

关于PHP/MySQL 从表中选择所有行并显示具有最低值的列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18313871/

相关文章:

javascript - 循环中 document.getElementById 的结果保持不变

PHP 正则表达式和 CSV 验证

php - mysql 查询当前日期结果

php - 如何使用 mysql 在带有 php 的文件夹中快速更改图像名称?

javascript - Ajax 加载脚本上的 Jquery 变量作用域

php - 如何自动 pull 版本号?

Mysql 十进制数据类型

php - Symfony 2.3.5 从文件创建数据库模式失败

php - 将数组元素添加到数据库查询形成的数组中

MySQL Pad 空月汇总报告。 (那里的 3/4 路)