Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Agrupando registros do loop while | PHP


Se você tiver certeza de que os resultados estão ordenados por prioridade, algo tão trivial quanto isso:
$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'];
}

Em outras palavras, você acompanha o nível de prioridade atual no $priority variável. Em seguida, teste se a prioridade foi alterada no if doença. Se sim, echo a prioridade e defina a prioridade atual para a prioridade encontrada na linha atual.

Lembre-se, isso só funciona como esperado (realmente agrupado uma vez) se as linhas forem ordenadas por prioridade. Em outras palavras, quando diferentes prioridades não estão espalhadas pelo conjunto de resultados.