El WITH RECURSIVE
declaración/método es aplicable en PostgreSQL y Sybase (y quizás algunos más, creo), por lo que tal vez pueda ver esto en su lugar:
http://www.artfulsoftware.com/mysqlbook/sampler/mysqled1ch20.html
Debería mostrarte algunos enfoques usando MySQL (y uno o dos en PHP, solo por mencionarlo, sé que no está en tu lista de etiquetas)