sql >> Database >  >> RDS >> Mysql

Hoe de waarde SQL_CALC_FOUND_ROWS te krijgen met behulp van voorbereide instructies?

Ik ben erin geslaagd om het uit te zoeken, ik zal mijn antwoord hieronder gedetailleerd weergeven voor iedereen die geïnteresseerd is in de toekomst.

Originele code

$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
    }

Code bijgewerkt

$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++;
        }
            //get total number of rows.
            $query="SELECT FOUND_ROWS()";
            $stmt = $connection->prepare($query);
            $stmt->execute();
            $stmt->bind_result($num);
            while($stmt->fetch()){
                $count=$num;
            }

        $stmt->close();//close statement
    }

Waarschijnlijk zou het op een andere manier beter kunnen, maar ik kon nergens online goede voorbeelden vinden en dit werkt!



  1. Hoe alle kolommen en een telling(*) in dezelfde query te selecteren

  2. Meer van mijn favoriete PostgreSQL-query's - en waarom ze er ook toe doen

  3. 10 effectieve manieren om productiever te zijn op het werk

  4. MySQL – Wacht enkele seconden met SELECT SLEEP()