我目前正在为如何SQL_CALC_FOUND_ROWS
使用准备好的语句来实现而摸不着头脑。
我正在编写一个分页类,显然我想将 LIMIT 添加到查询中,但还要找到总行数。
这是相关课程的一个示例。
$query = "select SQL_CALC_FOUND_ROWS id,title,location,salary,employer from jobs where region=38 limit 0,3";
if($stmt = $connection->prepare($query)) {
$stmt->execute()or die($connection->error); //execute query
$stmt->bind_result($id,$title,$location,$salary,$employer,$image);
while($stmt->fetch()){
$jobs[$x]['id']=$id;
$jobs[$x]['title']=$title;
$jobs[$x]['location']=$location;
$jobs[$x]['salary']=$salary;
$jobs[$x]['employer']=$employer;
$jobs[$x]['image']=$image;
$x++;
}
$stmt->close();//close statement
}
我对如何获得SQL_CALC_FOUND_ROWS
实际价值感到有些困惑?我曾想过添加类似的内容:
$stmt->store_result();
$count=$stmt->num_rows;
但这只给出了一个基于 LIMIT 的数字,所以在上面的例子中它是 3 而不是它应该是完整的 6。