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

Bagaimana cara agar kategori tingkat pertama hanya ditampilkan sekali?

hanya menampilkan catname ketika itu berubah. Anda juga perlu mengurutkan kueri Anda berdasarkan nama_kategori terlebih dahulu.

$row = mysql_fetch_array($result);
$catname = $row["category_name"];
$subcatname = $row["subcategory_name"];
$last = $catname;

echo "<li>$catname</li><ul>"

while($row = mysql_fetch_array($result)) {
    $catname = $row["category_name"];
    $subcatname = $row["subcategory_name"];
    if($last != $catname){
        echo "</ul><li>$catname</li><ul>"
    }
    echo "<li>$subcatname</li>";
    $last = $catname;
}
echo "</ul>";

Sunting:Baca kembali pertanyaan sepenuhnya dan ingin mengatakan bahwa ketika menyangkut pohon hierarkis, menggunakan induk/anak (atau kategori/sub/subsub) bukanlah metode terbaik. Meskipun berhasil, biasanya memerlukan beberapa kueri dan fungsi rekursif untuk ditampilkan. Pendekatan yang lebih baik adalah dengan menggunakan kumpulan bersarang yang dibuat untuk tujuan ini.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Gunakan Database Relasional MySQL di Fedora 14

  2. EXPLAIN dan COUNT mengembalikan dua nilai yang berbeda

  3. Berbagai Cara untuk Melihat Tabel di Server MySQL

  4. Bagaimana cara mengaktifkan akses eksternal ke Server MySQL?

  5. Injeksi SQL MariaDb