La maniera più semplice è quella di utilizzare due query (la seconda eseguita per il numero delle categorie):
Codice PHP:
<?php
$risultato=mysql_query("SELECT categ.nomecategoria AS nomecategoria,COUNT(*) AS num,categ.id AS id FROM categ,subcateg WHERE categ.id=subcateg.categoria GROUP BY categ.id");
while($result=mysql_fetch_array($risultato)) {
echo "<p /><strong>{$result['nomecategoria']} ({$result['num']}</strong>";
$ris2=mysql_query("SELECT nomesubcategoria FROM subcateg WHERE categoria='{$result['id']}'");
while($res2=mysql_fetch_array($ris2))
echo "<br />{$res2['nomesubcategoria']}";
}
?>
Non l'ho testato quindi non sono sicuro al 100% del funzionamento.