Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara mengelompokkan data array yang dikembalikan oleh kueri gabung kiri di php?

Meskipun Anda dapat menghasilkan array yang diinginkan dalam satu loop, saya lebih suka menjalankan dua kueri. Pertama ambil semua merek ke dalam larik dan tambahkan larik produk kosong ke setiap merek. Kemudian ambil semua produk dan tetapkan ke merek terkait.

Karena saya tidak tahu pustaka DB apa yang Anda gunakan, berikut beberapa jenis kode semu:

$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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana mengatasi MySQL innodb Menunggu kunci metadata tabel di TRUNCATE TABLE?

  2. Memilih semua item dalam satu tabel dan bergabung dengan tabel lain, memungkinkan nulls

  3. Cara mencari angka pasti di php

  4. Stempel waktu Unix vs waktu tanggal

  5. mysql-connector-java-8.0.12 :mendapatkan kesalahan untuk zona waktu server 'Malay Peninsula Standard Time'