Основният проблем със списъците със съседство е, че в SQL няма общ начин за извличане на цяло поддърво, така че вече имате проблем с идентифицирането на всички редове, които трябва да дублирате, без да прибягвате до курсор.
Ако е възможно, мигрирайте списъка си със съседство към модел на вложен набор, който ви позволява лесно да идентифицирате всички възли на поддърво. Обаче поддържането на модел на вложен набор е по-сложно за общи вмъквания и изтривания.
РЕДАКТИРАНЕ:Както е посочено от 'a_horse_with_no_name' има има начин в общ SQL за обработка на списъци със съседство, рекурсивни общи таблични изрази.