Perfetto.

La parola magica si cui avevo bisogno è subquery.

Grazie a bomberdini.

codice:
"SELECT * FROM articoli WHERE (permesso='si'  OR (permesso='ereditato' AND(permesso)IN(SELECT permesso FROM sottoctegoria where id=articoli.id_sottocategoria AND permesso='si')))  "
Ora non mi resta che andare in cascata fino alla categoria principale.

Dovrebbe esserci il tasto [risolto] da qualche parte...