sql >> Databasteknik >  >> RDS >> Mysql

MySQL (eller PHP?) grupperar resultat efter fältdata

Detta skulle vara min lösning, även om det inte alls är elegant

<?php
$dbc = new MySQLI(DBHOST,DBUSER,DBPASS,DB);
$result = $dbc->query("
SELECT
p.Group as 'group',
GROUP_CONCAT(name) as names
FROM prueba p
GROUP BY p.Group
");
?>
<table>
<tr>
    <th>Group</th>
    <th>Name</th>
</tr>
<?php while($row = $result->fetch_assoc()){
    $names = split(",",$row["names"]);
?>
    <tr>
        <td><?php echo $row["group"] ?> </td>
        <td><?php echo $names[0]; array_shift($names) ?></td>
    </tr>
    <?php foreach( $names as $name){ ?>
        <tr>
            <td></td>
            <td><?php echo $name ?></td>
        </tr>
    <?php } ?>
<?php } ?>
</table>


  1. Kan kommentarer hämma prestandan för lagrad procedur?

  2. Är det viktigt att stänga mysql-anslutningen?

  3. skillnaden mellan förklara plan och genomförandeplan

  4. Öka prestanda genom att använda lässkrivdelning av databastrafik med Moodle 3.9