sql >> Database teknologi >  >> RDS >> Mysql

Sådan konverteres DB-tabel med overordnet søn-relation til multi-dimensional array

Her er min løsning til det:

function cost_centres_format($items,$parent_id,$array=array()) {
    foreach($items as $item) {
        if($item->parent_id == $parent_id) {
            $array[] = $item;
            if($item->internal_purchase_order_cost_centre_id>0) {
                $array = cost_centres_format($items,$item->internal_purchase_order_cost_centre_id,$array);
            }
        }
    }
    return $array;
}
$array = cost_centres_format($items,0);

Diesel (id:5) vil være under køretøjsvedligeholdelse (id:4) på ​​grund af dens oprindelige ordre. Du kan foretage en ekstra sortering efter navn, men i dit eksempel var Kapital (id:3) under Overheads (id:2).



  1. Hvad betyder M,D i decimal (M,D) præcist?

  2. Dobbelt mysql_real_escape_string indsættelse af nye linjetegn. Hvordan får man nye linjeskift tilbage?

  3. MySql Vælg Hvor og C#

  4. Oracle 10g - optimer WHERE IS NOT NULL