如何在MySQL中选择列的最大值

时间:2015-11-30 07:15:40

标签: php mysql

我想选择表格列的最大值。我使用的是PHP和MySQL。这就是我到目前为止所做的:

$max = "SELECT MAX(Id) FROM trialtabel2"; 
$max1 =  mysqli_query($dblink, $max); 
echo= $max1;

我的调试器只是说这是一个返回0 boolean value (false)的查询。我无法在互联网上的任何地方找到具体的答案。

4 个答案:

答案 0 :(得分:5)

您需要fetch使用mysqli_result执行查询时返回给您的mysqli_query对象中的数据。

    $max = "SELECT MAX(Id) as id FROM trialtabel2"; 
    $max1 =  mysqli_query($dblink, $max); 
    $row = mysqli_fetch_assoc($max1);    // this was missing
    $id=$row['id'];
    echo $id;

注意:我删除了循环,因为使用MAX查询而没有任何分组,您将只返回1行。如果结果集中有多行,则需要遍历所有行

答案 1 :(得分:4)

两种方式 首先是人们所描述的

$max = "SELECT MAX(Id) as max_id FROM trialtabel2";     
$max1 =  mysqli_query($dblink, $max);   
$row = mysqli_fetch_assoc($max1); 
$max_id=$row['max_id'];      
echo $max_id;  

第二是订购和限制

$max_id = 0;
$max = "SELECT id  FROM trialtabel2 order by id desc limit 0,1";    
$max1 =  mysqli_query($dblink, $max);     
while($row = mysqli_fetch_assoc($max1)){    
   $max_id=$row['id'];    
}    
echo $max_id;  

在您的代码中,您错过了fetch语句。你需要从结果集中获取。见上面你缺少的东西。

答案 2 :(得分:1)

尝试使用此..,

$max = "SELECT MAX(Id) as maxId FROM trialtabel2"; 
$max1 =  mysqli_query($dblink, $max); 
$row = mysqli_fetch_assoc($max1);
echo $row['maxId'];

希望这会有所帮助..

答案 3 :(得分:-2)

Fill Proportionally