Mysql
 sql >> Base de données >  >> RDS >> Mysql

Regroupement des enregistrements de la boucle while | PHP

Si vous êtes sûr que les résultats sont classés par priorité, alors quelque chose d'aussi trivial que ceci :

$priority = null;
while($row = mysql_fetch_array($result))
{
    if( $row['priority'] != $priority )
    {
        echo '<h1>Priority Level: ' . $row['priority'] . '</h1>';
        $priority = $row['priority'];
    }
    echo $row['name'];
}

En d'autres termes, vous gardez une trace du niveau de priorité actuel dans le $priority variable. Testez ensuite si la priorité a changé dans le if état. Si oui, echo la priorité et définissez la priorité actuelle sur la priorité trouvée dans la ligne actuelle.

Attention, cela ne fonctionne comme prévu (vraiment groupé une fois) que si les lignes sont classées par priorité. En d'autres termes, lorsque différentes priorités ne sont pas dispersées dans l'ensemble de résultats.