sql >> Databasteknik >  >> RDS >> Mysql

hur man hämtar den hierarkiska menyn från mysql

$stmt = "SELECT id, parent_id FROM table";
$items = Array();
$result = mysql_query($stmt);

while ($line = mysql_fetch_assoc($result)) {
    $items[] = $line;
}

$hierarchy = Array();

foreach($items as $item) {
    $parentID = empty($item['parent_id']) ? 0 : $item['parent_id'];

    if(!isset($hierarchy[$parentID])) {
        $hierarchy[$parentID] = Array();
    }

    $hierarchy[$parentID][] = $item;
}

Rotnivån kommer att vara $hierarchy[0] . Nycklar är objekt-ID och värden är alla direkta underordnade.



  1. Hibernate_sequence-tabellen genereras

  2. Räkna antal rader i golang

  3. Mysql :Inte tillåtet att returnera en resultatuppsättning från en funktion

  4. bästa sättet att ändra datumformatet i mysql SELECT?