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

Raccolta di dati simili ad albero in SQL (Mysql)

Sì, è possibile utilizzare un modello di set nidificato. C'è un libro di Joe Celko che descrive, ma se vuoi entrarci subito c'è un articolo che ne parla. Entrambi i dati raccolti di cui hai bisogno possono essere recuperati da una singola istruzione select come questa:

SELECT * FROM TableB where left > some_value1 and right < some_value2

Nell'esempio sopra per ottenere tutti i nodi figlio di "Elettronica portatile", la query sarà:

SELECT * FROM Electronics WHERE `left` > 10 and `right` < 19

L'articolo descrive come inizializzare le colonne sinistra e destra.