Ich habe eine Tabelle wie folgt. parent_tree Spalte enthält Doppelpunkt getrennt Mutterbaum dh Großgroßeltern : Großeltern : ElternBestellung Eltern/Kind - Hierarchische Daten in SQL Tabelle
parent_tree | name | Type
All Liabilities:Current Liabilities | Salaries Payable | Liabilities
Assets | Current Assets | Assets
null | All Liabilities | Parent
All Liabilities | Current Liabilities | Parent
null | Assets | Parent
.
.
Frage Jetzt möchte ich eine Auswahlabfrage ausgeführt werden (wählen --- aus der Tabelle, um durch ----) zu erhalten in der folgenden Reihenfolge, dh Eltern führen und dann seine Kinder:
parent_tree | name | Type
null | All Liabilities | Parent
All Liabilities | Current Liabilities | Parent
All Liabilities:Current Liabilities | Salaries Payable | Liabilities
null | Assets | Parent
Assets | Current Assets | Assets
So ist die wichtigste Frage, was soll ich geschrieben e in Auftrag von
versuchte ich folgendes aber Ergebnis ist in der richtigen Reihenfolge nicht:
select * from table order by if(type = 'Parent', concat(coalesce(parent_tree,name), ':' ,name), parent_tree), length(parent_tree), if(type = 'Parent', 0, 1), type";