Maison > Article > base de données > Regroupement des résultats MySQL : SQL vs PHP – Quelle approche est la meilleure ?
Dans le domaine de la gestion des données, des scénarios peuvent survenir dans lesquels vous devez regrouper les résultats de la base de données par données de champ et les afficher dans un format spécifique. Considérez les exemples suivants :
Exemple 1 :
Organisez une liste de noms en fonction de l'ID de groupe :
Exemple 2 :
Associez les titres correspondants et les valeurs de coefficient en fonction d'un identifiant de groupe commun :
Pour relever ces défis, deux approches principales émergent : SQL et PHP.
Approche SQL
Pour les tâches de regroupement simples, SQL fournit des fonctions intégrées. Dans le premier exemple, vous pouvez utiliser GROUP_CONCAT() pour combiner des noms au sein de chaque groupe, comme indiqué ci-dessous :
<code class="sql">SELECT `Group`, GROUP_CONCAT(`Name`) AS `names` FROM YOUR_TABLE GROUP BY `Group`</code>
Approche PHP
Pour des scénarios plus complexes, PHP offre une plus grande flexibilité. Prenons le deuxième exemple, où vous devez associer titres et coefficients :
<code class="php">// Establish connection $dbc = new MySQLI(...); // Execute query $result = $dbc->query(" SELECT p.`Group` AS `group`, a.`title`, b.`meta_value` AS `coef` FROM prueba AS p INNER JOIN table_a AS a ON p.`meta_value` = a.`id` LEFT JOIN table_b AS b ON p.`meta_value` = b.`id` GROUP BY p.`Group` "); // Display in HTML table echo '<table>';</code>
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!