Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQL GROUP чрез или използвайки PHP?

Изглежда по-лесно да не използвате GROUP BY особено тъй като няма да ви предостави данните, които искате. Затова вместо това просто ги изберете всички и ги сортирайте по доставчик и може би по изпълнител като подсортиране като така

<?php 
    $result = $mysqli->query("SELECT * FROM `table` ORDER BY provider, artist");

    $current_provider = NULL;

    while ($data = $result->fetch_object()){
        if ( $current_provider != $data->provider ) {
            // new provider
            echo 'provider '. $data->provider;
            $current_provider = $data->provider;
        }
        echo $data->artist;
    }
?>

СЛЕД АКТУАЛИЗИРАНЕ:

<?php
    $service = $db->query("SELECT * FROM `system` ORDER BY provider, artist");

    $current_provider = NULL;

    while ($data = $service->fetch_object()) {

        if ( $current_provider != $data->provider ) {
            if ( $current_provider !== NULL ) {
                echo '</div>';
            }
            echo '<div class="service">';
            echo '<p class="lower">' . $data->provider . '</p>';
            $current_provider = $data->provider;
        }
        echo '<a href="?artist=' . $data->artist '">' .
             $data->artist . '</a><br/>';   
    }
    echo '</div>';


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Заместващи символи в Java PreparedStatements

  2. Превъртане през набори от резултати в MySQL

  3. PHP Как да запишете данни от масив в mysql с помощта на laravel 5

  4. Избиране на най-често срещаната стойност от релация - SQL израз

  5. aioMySQL не се свързва с python