Mysql
 sql >> Database >  >> RDS >> Mysql

controllare il valore nell'albero di n-profondità?

Se i set nidificati non sono un'opzione, so quanto segue:

  • Se i dati sono ordinati in modo che i figli di un genitore seguano sempre il suo genitore, puoi risolverlo con una query di database su tutti i dati saltando i nodi nascosti nell'output.

Funziona allo stesso modo anche con un set nidificato ordinato, il principio è stato delineato in questa risposta tuttavia gli algoritmi per ottenere la profondità non funzionano e suggerirei un iteratore ricorsivo che è in grado di rimuovere gli elementi nascosti.

Inoltre, se i dati non sono ordinati, puoi creare una struttura ad albero dalla query (non ordinata) di tutte le righe come descritto in la risposta a Matrice nidificata. Il terzo livello sta scomparendo . Non è necessaria la ricorsione e ottieni una struttura che puoi facilmente produrre, avrei dovuto coprirla per <ul>/<li> output in stile html anche in un'altra risposta.