Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm cách nào để nhóm dữ liệu mảng được trả về bởi truy vấn nối trái trong php?

Trong khi bạn có thể tạo mảng mong muốn trong một vòng lặp, tôi muốn thực hiện hai truy vấn. Trước tiên, hãy tìm nạp tất cả các thương hiệu vào một mảng và thêm một mảng sản phẩm trống vào mọi thương hiệu. Sau đó, tìm nạp tất cả các sản phẩm và gán chúng cho thương hiệu có liên quan.

Vì tôi không biết bạn đang sử dụng thư viện DB nào, đây là một số loại mã giả:

$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. Giải thích về khung khả dụng cao của MySQL - Phần II:Sao chép bán đồng bộ

  2. Hợp nhất hai bảng trong một truy vấn SQL và làm cho các giá trị ngày trở thành duy nhất

  3. SQL để sắp xếp một chuỗi chữ và số theo phần số

  4. PHP MySql:Print Tree - Parent Child Checkbox

  5. Bảng nối bên trong liên quan đến giá trị lớn nhất