Hola a todos.
Tengo una base de datos con una tabla donde guardo categorías. Éstas categorías pueden tener subcategorías, y cada subcategoría también puede tener, y así hasta el nivel que sea. En la tabla guardo nombre de la categoría, nivel en el que se encuentra y la id de su categoría padre.
Por ejemplo, para esta jerarquía:
Cremas
|---- Crema de puerros
|---- Gazpacho
| |------ Con pan
| |------ Sin pan
| |------- Suave
| |------- Fuerte
|---- Vichysoisse
Tengo esta tabla:
ID CATEGORÍA NIVEL PADRE
1 Cremas 1 0
2 Crema de puerros 2 1
3 Gazpacho 2 1
4 Vichysoisse 2 1
5 Con pan 3 3
6 Sin pan 3 3
7 Suave 4 6
8 Fuerte 4 6
¿Alguien me puede dar un algoritmo que me permita, eligiendo una categoría de cualquier nivel, eliminarla junto con todas sus categorías hijas? Por ejemplo, si elijo eliminar "Gazpacho", se deberían borrar las categorías "Gazpacho", "Con pan", "Sin pan", "Suave" y "Fuerte".
Muchas gracias de antemano.