php 如何从sql表中列值最高的数据库中进行选择

42fyovps  于 2022-11-28  发布在  PHP
关注(0)|答案(2)|浏览(116)

我有一个表,其中包含一些数据,但我希望获取特定列votecount具有最高值的行:
| 标识符|票数|
| - -|- -|
| 一个|第0页|
| 2个|一个|
| 三个|一个|
| 四个|十三|
我尝试了以下sql语句:

$selectr = "SELECT *, MAX(`votecount`) from `audio`"; 
$stmt = $conn->prepare($selectr);
$stmt->execute([]);
while($row = $stmt->fetch())
{
    $userid = $row["id"];
    $votecount = $row["votecount"];
    echo $userid;
    echo $votecount;
}

但它返回10,这意味着它获得了表中的第一项,值为0,这是错误的,它没有获得最高列
那我该怎么解决这个问题

kb5ga3dv

kb5ga3dv1#

试试这个:

$selectr = "SELECT * from `audio` where `votecount` = ( SELECT MAX(`votecount`) from `audio`)"; 
$stmt = $conn->prepare($selectr);
$stmt->execute([]);
while($row = $stmt->fetch())
{
    $userid = $row["id"];
    $votecount = $row["votecount"];
    echo $userid;
    echo $votecount;
}
pxq42qpu

pxq42qpu2#

尝试更正:$用户标识= $行["用户标识"];到$用户标识= $行["标识"];

相关问题