Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Podstawowe pytanie dotyczące grupowania tablic MySQL w PHP

Spróbuj tego...

Zapytaj o wszystkie miasta ze stanem, najpierw w kolejności według stanu, a następnie według miasta:

SELECT id, alphaname, state 
FROM regional 
ORDER BY state ASC, alphaname ASC

Uporządkuj swój zbiór danych w dwuwymiarowej tablicy:

$states = array();
while($thearray = mysql_fetch_array($list)) 
{
    $states[$thearray[state]][$thearray[id]] = $thearray[alphaname];
} 

Teraz zawartość twoich $states powinien wyglądać mniej więcej tak:

Array
(
    [AK] => Array (
        [id_1] = Anchorage
        [id_2] = Juneau
    )
    [CA] => Array (
        [id_3] = Los Angeles
        [id_4] = San Diego
        [id_5] = San Francisco
    )
)

Wygeneruj prezentację HTML:

UWAGA:dodaj kotwicę, aby odzwierciedlić proponowane pytanie.

foreach($states as $state_name => $cities)
{
    echo '<h3>'.$state_name.'</h3>';
    echo '<ul>';
    foreach($cities as $id => $city_name)
    {
        echo '<li><a href="info.html?id='.$id.'">'.$city_name.'</a></li>';
    }
    echo '</ul>';
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. php:Przechowuj obraz w blobie Mysql, dobry czy zły?

  2. JSON_STORAGE_FREE() — dowiedz się, ile miejsca na dysku zostało zwolnione po aktualizacji dokumentu JSON w MySQL

  3. Alias ​​dla klauzuli GROUP BY?

  4. Jaki jest najszybszy sposób wybrania 2 kolumn z tego samego (losowego) rekordu w MySQL?

  5. Pomoc w chwytaniu (INNER?) JOIN