Maison >base de données >tutoriel mysql >Comment puis-je parcourir plusieurs fois un ensemble de résultats MySQL à l'aide des fonctions « mysql_* » ?

Comment puis-je parcourir plusieurs fois un ensemble de résultats MySQL à l'aide des fonctions « mysql_* » ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-03 18:29:15221parcourir

How Can I Iterate Multiple Times Over a MySQL Result Set Using `mysql_*` Functions?

Faire une boucle dans les ensembles de résultats MySQL plusieurs fois à l'aide des fonctions mysql_*

Comment pouvez-vous parcourir efficacement un ensemble de résultats MySQL plusieurs fois tout en utilisant les fonctions mysql_* ? Ce scénario peut survenir lors du traitement d'opérations complexes ou en plusieurs étapes dans un seul script.

Solution :

Pour y parvenir, suivez les étapes suivantes :

$result = mysql_query(/* Your query */);
while ($row = mysql_fetch_assoc($result)) {
    // Perform necessary operations on the current row...
}

// Reset the result pointer to the beginning
mysql_data_seek($result, 0);
while ($row = mysql_fetch_assoc($result)) {
    // Re-process the current row...
}

Cette technique consiste à :

  • Exécuter la requête une fois et attribuer le résultat à un variable.
  • Utilisation de la fonction mysql_fetch_assoc() pour la récupération de la ligne initiale.
  • Utilisation de mysql_data_seek() pour réinitialiser le pointeur de résultat sur la première ligne et parcourir l'ensemble de résultats encore une fois.

Attention :

Il est important de noter que cette approche peut ne pas être optimale pour les opérations à forte intensité de performances. De plus, il peut ne pas être approprié de retraiter les données récupérées dans le même script, car les données doivent généralement être manipulées en une seule itération.

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