我在这里遇到了一些问题。 我尝试从列(数据类型为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
答案 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'
提供值。