Eine binäre Baumrekursion finden Sie den unteren Punkt links
ID Automatische Nummerierung
PID Parent ID
ID_PATH NODE PATH
FLG Position, 0 links, 1 rechts
AlterProcedure [DBO]. [Get_class]
Kopieren Sie den Code wie folgt: @classint,
@Returnintoutput
ALS
Select@return = isnull ((selectTop1IdfromClasswherePID =@classAndflg = 0),-2)
Wenn@return> -1
Beginnen
execget_class@return,@returnOutput-Warum müssen Sie @Return hier verwenden? Wenn Sie diesen Wert am Ende erhalten möchten, müssen Sie ihn weitergeben
Ende
anders
Beginnen
Wählen Sie@return =@class
Ende
GEHEN
Tatsächlich benötigen Sie nur eine Abfrageanweisung, um die niedrigste ID zu finden
Der Knotenpfad enthält 1, und die übergeordneten Knotenpositionen sind auf der linken Seite die größte herausnehmen
selectTop1*fromClassAWHEREID_PATHILE '%1,%' und flg = 0and (selectFlgfromClasswhereId = A.PID) = 0OrDBYIDDESC