Maison  >  Article  >  base de données  >  Comment compter efficacement les lignes dans les résultats d'une requête MySQL ?

Comment compter efficacement les lignes dans les résultats d'une requête MySQL ?

DDD
DDDoriginal
2024-11-05 02:34:02402parcourir

How to Efficiently Count Rows in MySQL Query Results?

Comptage des lignes dans les résultats des requêtes MySQL

Introduction :

Lorsque vous travaillez avec des bases de données MySQL, compter le nombre de lignes résultant d'une requête est une tâche courante pour diverses applications. Cet article propose plusieurs méthodes pour compter efficacement les lignes dans MySQL.

1. Utilisation de la fonction mysql_num_rows() :

La fonction mysql_num_rows() renvoie le nombre de lignes dans un ensemble de résultats. Pour l'utiliser, récupérez le résultat de la base de données à l'aide d'une requête puis transmettez le résultat à la fonction :

# Example usage in PHP:
$result = mysqli_query($conn, "SELECT * FROM table1");
$num_rows = mysqli_num_rows($result);

2. Utilisation du mot-clé COUNT(*) :

Le mot-clé COUNT(*) permet de compter le nombre de lignes qui correspondent à un critère spécifique. Ceci est particulièrement utile pour filtrer les résultats :

# Count rows where 'bar' equals 'value':
SELECT COUNT(*) FROM table1 WHERE bar = 'value';

3. Obtenir le nombre total de lignes avec LIMIT (jusqu'à MySQL 8.0.16) :

Pour obtenir le nombre total de lignes sans tenir compte de la clause LIMIT, utilisez le mot-clé SQL_CALC_FOUND_ROWS suivi de SELECT FOUND_ROWS() :

# Calculate total rows ignoring LIMIT:
SELECT SQL_CALC_FOUND_ROWS * FROM table1 WHERE bar = 'value' LIMIT 10;

SELECT FOUND_ROWS();

Remarque importante pour MySQL 8.0.17 et Plus tard :

SQL_CALC_FOUND_ROWS est obsolète dans MySQL 8.0.17 et sera supprimé dans les versions futures. Au lieu de cela, il est recommandé d'utiliser une requête distincte pour calculer le nombre total de lignes.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn