gpt4 book ai didi

php - MySQL 选择查询后的前 5 行

转载 作者:行者123 更新时间:2023-11-29 01:24:26 26 4
gpt4 key购买 nike

我有一个 mysql 结果(有很多行),稍后我将使用它。现在,我只需要访问(求和)前 5 行。问题是这些行是使用“AS”从查询中保存的,因此现在可以使用 $row['name'] 访问它们。如何选择前 5 行而不使用每行的“名称”?

有没有办法这样做:

PHP:

for($i=0;$i<5;++$i)
echo $row[$i];

编辑
抱歉,我的问题错了。实际上:如何使用相同的 $result 2 次而不会因获取数组而丢失值?

最佳答案

您使用什么来处理数据库? PDO? MySQLi? MySQL 扩展?

如果您使用 MySQL 扩展(mysql_connect()mysql_query() 等),则可以使用 mysql_data_seek()移动MySQL结果的内部行指针:

$res = mysql_query($sql);
if ( mysql_num_rows($res) ) {
// process first 5 lines
for ( $n = 0; $n < 5; ++$n ) {
$row = mysql_fetch_assoc($res);
if ( $row === false ) {
break;
}
// do something with $row
// ...
}
// reset pointer
mysql_data_seek($res, 0);
// process all rows
while ( $row = mysql_fetch_assoc($res) ) {
// do something with $row
// ...
}
}
mysql_free_result($res);

另一种选择是将所有结果提取到一个数组中,然后使用该数组。我想不出保持 MySQL 资源打开有什么好处。

关于php - MySQL 选择查询后的前 5 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5991141/

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