Bueno pues demo o turorial ninguno eso lo hice para una empresa, pero es muy simple y sencillo, son dos ciclos for uno anidado, aqui te pongo el codigo:
    
Código PHP:
Ver original- <ul>     
- <?php 
-     function consultaCategorias ($sql) 
-     { 
-         $consulta_categorias = $sql->consulta("SELECT * FROM tb_categorias"); 
-         for ($i=0; $i < $categorias = $sql->fetch_array($consulta_categorias); $i++): 
-     ?> 
-         <li><a href="http://www.forosdelweb.com/f18/categorias/<?php echo $categorias['codicate'] ?>"><?php echo $categorias['nombcate'] ?></a> 
-             <ul> 
-                 <?php 
-                     $consulta_productos = $sql->consulta("SELECT * FROM tb_productos WHERE codicate = '".$categorias['codicate']."'"); 
-                     for ($j=0; $j < $productos = $sql->fetch_array($consulta_productos); $j++): 
-                 ?> 
-                     <li><a href="http://www.forosdelweb.com/f18/productos/<?php echo $productos['descvinculo'] ?>"><?php echo $productos['descprod'] ?></a></li> 
-                         <?php endfor; ?> 
-             </ul> 
-         </li> 
-         <?php endfor; ?> 
-     <?php } ?> 
- </ul> 
Este el codigo que consulta y muestra pero hay otros scripts que tiene el css del menu y el js del menu. 
Cualquier duda pregunta.