Det grundlæggende problem med tilstødende lister er, at der ikke er nogen generel måde i SQL at udtrække et helt undertræ, så du har allerede et problem med at identificere alle de rækker, du skal duplikere uden at ty til en markør.
Hvis det er muligt, migrer din tilstødende liste til en indlejret sætmodel, som giver dig mulighed for nemt at identificere alle noderne i et undertræ. Vedligeholdelsen af en indlejret sætmodel er dog mere kompleks for generelle indsættelser og sletninger.
EDIT:Som påpeget af 'a_hest_med_intet_navn' er en generel måde at behandle tilstødende lister, rekursive almindelige tabeludtryk.