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

Hvordan grupperer man array-data returneret af venstre joinforespørgsel i php?

Mens du kan generere det ønskede array i en enkelt løkke, vil jeg hellere udføre to forespørgsler. Hent først alle mærker i et array og tilføj et tomt produktarray til hvert mærke. Hent derefter alle produkter og tildel dem til det relaterede mærke.

Da jeg ikke ved hvilket DB-bibliotek du bruger, her en slags pseudokode:

$data = [];

$brandResult = $db->query("SELECT id, name FROM tbl_brand");
while ($row = $brandResult->fetchObject()) {
    $row->product_names = [];
    $data[$row->id] = $row;
}

$productResult = $db->query("SELECT id, brand_id, p_name FROM tbl_products");
while ($row = $productResult->fetchObject()) {
    $data[$row->brand_id][$row->id] = $row->p_name;
}


  1. C# parametriserede forespørgsler til Oracle - alvorlig og farlig fejl!

  2. Opdater SQL Server-statistikker ved hjælp af en databasevedligeholdelsesplan

  3. Mysql visualiseringsværktøjer

  4. Få første/sidste n poster pr. gruppe af