sql >> Databasteknik >  >> RDS >> Mysql

Grundläggande PHP MySQL-arraygrupperingsfråga

Prova detta...

Fråga alla städer med stat, beställ först efter stat och sedan efter stad:

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

Organisera din datauppsättning i tvådimensionell array:

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

Nu innehållet i dina $states ska se ut ungefär så här:

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

Skapa din HTML-presentation:

OBS:Lägg till ankare för att återspegla föreslagen fråga.

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. Hur ställer jag programmatiskt in anslutningssträngen för Entity-Framework Code-First?

  2. Installera MySQL på Ubuntu utan en lösenordsuppmaning

  3. Använder du MySQL-sökord i en fråga?

  4. mysql - returnera första kolumnen en gång och alla motsvarande kolumndata