gpt4 book ai didi

php mysql 查询

转载 作者:行者123 更新时间:2023-11-29 14:44:38 25 4
gpt4 key购买 nike

我对 mysql 查询还很陌生。我正在构建一个评审系统,从图像中选出前 20 名。但有时会有多个图像并列第 20 位,我构建了 2 个查询来修复此问题,同时显示了并列第 20 位的少数结果。我通过在第一个查询中构建一个 id 数组来确保没有重复项来做到这一点。我的问题是:这是否可以写在一个查询中。

这就是我所拥有的(基本上)

    $SQL = mysql_query("SELECT * FROM images ORDER BY score DESC() LIMIT 20"); 
while($images=mysql_fetch_array($SQL)){
//print my 20 results
$ids[]=$images['id']; //array of ids not to select in next query
$lastscore=$images['score'];
}

$SQL = mysql_query("SELECT * FROM images WHERE score='$lastscore' AND id!=".join(' AND id!=', $ids)."");
while($images=mysql_fetch_array($SQL)){
//print results
}

最佳答案

下面的查询查找子选择中的前 20 个分数值,并使用它们检索包含这些值的所有完整行。

SELECT * FROM images 
WHERE score IN (SELECT DISTINCT score FROM images ORDER BY score DESC LIMIT 20)
ORDER BY score DESC;

关于php mysql 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7250995/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com