gpt4 book ai didi

mysql - 如何计算所有记录但只检索(LIMIT)特定数量以供显示?

转载 作者:可可西里 更新时间:2023-11-01 06:59:06 25 4
gpt4 key购买 nike

我只想回显前 10 行,但我需要计算受查询影响的总行数。

我正在做一个 LIMIT 10,然后用明显的问题计数,我一直得到 10 作为计数。

什么才是正确的做法?

$data = mysql_query("SELECT * FROM Badges WHERE UID = '$user' ORDER by Date DESC");
$count = mysql_num_rows($data);

while($row = mysql_fetch_array( $data ))
{
echo $row['Site'];
}

最佳答案

MySQL 对这类事情有一些特殊的支持。首先,在您的 SELECT 中包含 SQL_CALC_FOUND_ROWS:

SELECT SQL_CALC_FOUND_ROWS *
FROM Badges
WHERE UID = '$user'
ORDER by Date DESC
LIMIT 10 -- Or whatever

然后拉出你的行然后立即查看FOUND_ROWS()像这样:

SELECT FOUND_ROWS()

在不考虑 LIMIT 子句的情况下获取与原始查询匹配的行数。

这是 MySQL 特有的,但它应该比执行两个查询快一点。

关于mysql - 如何计算所有记录但只检索(LIMIT)特定数量以供显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8060213/

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