Angenommen, Sie haben die folgende Tabelle haben:Erste Hierarchiedaten aus sich selbst verweisende Tabellen
items(item_id, item_parent)
... und es ist eine sich selbst verweisende Tabelle - item_parent
bezieht sich auf item_id
.
Welche SQL-Abfrage würden Sie alle Artikel, die in der Tabelle zusammen mit ihrem Tiefen SELECT verwenden, um, wo die Tiefe eines Elements ist die Summe aller Eltern und Großeltern dieses Elements.
Wenn das folgende ist der Inhalt der Tabelle:
item_id item_parent
----------- -----------
1 0
2 0
3 2
4 2
5 3
... die Abfrage den folgenden Satz von Objekten abrufen soll:
{ "item_id": 1, "Tiefe": 0 }
{ "item_id": 2, "Tiefe": 0}
{ "item_id": 3, "Tiefe": 1}
{ "item_id": 4, "Tiefe": 1}
{“ item_id ": 5," Tiefe ": 2}
P. S. Ich suche nach einem von MySQL unterstützten Ansatz.
Suche nach "Recursive CTE". – RBarryYoung
Welche Datenbank und Version? Rekursive Abfragen sind herstellerspezifisch, sofern sie überhaupt unterstützt werden. – RedFilter
@RBarryYoung: Das setzt voraus, dass er MS SQL Server verwendet. –