使用mysql MAX()和PHP从数据库中获取数据

时间:2017-10-09 18:43:52

标签: php mysql

我在这里遇到了一些问题。 我尝试从列(数据类型为float)中获取具有最大数字的数据并显示它。但它只显示行数(即1)

如何获得我需要的确切“数字”?

PHP

   <?php
    $sql= mysqli_query($con, "SELECT MAX(payment_price) FROM client_record WHERE payment_status ='Settled'");
    $row = (int)mysqli_fetch_array($sql);
    echo $row;

   ?>

它显示的内容:

 1

我需要看到的内容:

 //the exact price that MAX() fetched
 20,000

2 个答案:

答案 0 :(得分:3)

作为您使用的函数,名称为mysqli_fetch_array,这意味着此函数的结果为数组。将array类型转换为int类型并不符合您的预期。

相反,您需要使用的只是:

$row = mysqli_fetch_array($sql);
print_r($row);
// what you need is something like
echo $row['MAX(payment_price)'];

答案 1 :(得分:0)

尝试以下方法:

<?php
$sql= mysqli_query($con, "SELECT MAX(payment_price) as max FROM client_record WHERE payment_status ='Settled'");
$row = mysqli_fetch_array($sql);
echo $row['max'];

array转换为int时,只会将其转换为布尔值。不是array的值。因此,使用索引'max'来获取所需的值,因为您可以看到我编辑了MySql查询以添加as max它将为'max'提供值。