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

jak uzyskać hierarchiczne menu z 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;
}

Poziomem głównym będzie $hierarchy[0] . Klucze są identyfikatorami elementów, a wartości są bezpośrednimi dziećmi.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak znaleźć unikalne pary z dwóch kolumn w SQL?

  2. zduplikowane wpisy mysql i php

  3. Group_Concat w Concat nie działa z wartościami NULL

  4. Pomiń wiersze błędów podczas ładowania danych do tabeli mysql z pliku rozdzielanego

  5. Kombinacja wyszukiwania pola z wykorzystaniem PHP i MYSQL