Comptage des résultats des requêtes MySQL
Le nombre de lignes renvoyées par une requête MySQL peut être récupéré en utilisant plusieurs méthodes :
Itération sur les résultats
Parcourez simplement l'ensemble de résultats et comptez les lignes. Bien que cette approche puisse être simple, elle n'est pas très efficace.
Utilisation des fonctions MySQL
MySQL fournit la fonction mysql_num_rows pour compter les lignes dans un résultat. Cette fonction est exposée dans les bibliothèques clientes, telles que mysqli_num_rows en PHP :
<code class="php">$result = mysqli_query($link, "SELECT * FROM table1"); $num_rows = mysqli_num_rows($result);</code>
Utilisation de COUNT(*) pour le comptage sélectif
Pour compter les lignes correspondant à des critères spécifiques, utilisez la fonction d'agrégation COUNT(*). Par exemple :
<code class="sql">SELECT COUNT(*) FROM foo WHERE bar= 'value';</code>
Obtention du nombre total de lignes lors de l'utilisation de LIMIT
Si votre requête inclut une clause LIMIT, vous pouvez utiliser SQL_CALC_FOUND_ROWS et FOUND_ROWS() pour récupérer le total nombre de lignes qui auraient été renvoyées sans le LIMIT :
<code class="sql">SELECT SQL_CALC_FOUND_ROWS * FROM foo WHERE bar="value" LIMIT 10; SELECT FOUND_ROWS();</code>
Remarque : L'utilisation de SQL_CALC_FOUND_ROWS est obsolète dans MySQL 8.0.17 et versions ultérieures. Il est recommandé d'émettre une requête distincte pour calculer le nombre à la place.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!