Salve, ho un piccolo problema.
Ho uno script PHP che organizza dei dati in categorie. Le categorie sono in una tabella a parte, con i campi
id
genitore
nome
in questo modo, posso permettere l'annidamento di cartelle.
Se genitore = 0, allora la cartella è a livello base, altrimenti genitore contiene l'id della genitore.
A questo punto, nella tabella con i dati, ci sarà un campo
id_cat che indica in quale cartella deve trovarsi il file.
Ad esempio
rappresenta la struttura gerarchicacodice:id genitore nome 1 0 cart1 2 0 cart2 3 1 cart3 4 1 cart4 5 3 cart5 5 2 cart6
A questo punto ho da risolvere un bel problema, contare i record contenuti dentro una cartella, ma, ovviamente, questo numero deve contenere anche i valori di tutte le sottocartelle (in modo ricorsivo, insomma).codice:+ cart1 + cart3 + cart5 + cart4 + cart2 + cart6
Tipo, se voglio il numero di record di cart1, dovrei contare:
- i record inseriti direttamente in cart1
- i record in cart3
- i record in cart5
- i record in cart4
potrei agire a livello PHP, ma mi sembra un processo molto lungo e che richiede l'ausilio di tantissime query.
Non esiste un modo, con una sola query di semplificare il lavoro?
Grazie a tutti.