Heim > Datenbank > MySQL-Tutorial > Kann MySQL eine Baumstrukturtabelle in einer Abfrage auf jede beliebige Tiefe abfragen?

Kann MySQL eine Baumstrukturtabelle in einer Abfrage auf jede beliebige Tiefe abfragen?

Linda Hamilton
Freigeben: 2025-01-06 17:33:40
Original
444 Leute haben es durchsucht

Can MySQL Query a Tree Structure Table to Any Depth in One Query?

Kann eine Baumstrukturtabelle in MySQL in einem einzigen Versuch bis zu einer beliebigen Tiefe abgefragt werden?

Es stellt sich die Frage, ob dies machbar ist Durchlaufen Sie eine baumstrukturierte Tabelle in MySQL und rufen Sie alle Nachkommen oder Vorfahren, unabhängig von der Tiefe, auf einmal ab Anfrage.

Antworten

Ja, das ist möglich. Eine modifizierte Preorder Tree Traversal-Technik, wie sie in Joe Celkos „Trees and Hierarchies in SQL for Smarties“ beschrieben wird, ermöglicht dies. Hier ist ein Ausschnitt aus dem Referenzmaterial:

SELECT *
FROM tree
ORDER BY FIELD(`left`, @field_list_all, @field_list_current, @field_list_children)
LIMIT 1
Nach dem Login kopieren

Diese Abfrage verwendet eine „Feldliste“, die als Variable (@field_list_all) gespeichert ist, um die Durchquerung zu verfolgen und Knoten zu identifizieren, die effizient verarbeitet werden sollen. Ein umfassendes Beispiel finden Sie in der angegebenen Dokumentation.

Das obige ist der detaillierte Inhalt vonKann MySQL eine Baumstrukturtabelle in einer Abfrage auf jede beliebige Tiefe abfragen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage