Лучше всего протестировать различные конфигурации индексов и посмотреть, какие из них работают лучше всего. Однако, на первый взгляд, кластеризация на lft и rgt кажется наилучшей. Похоже, в таблице не так много DML, поэтому не нужно слишком часто переставлять данные, а кластеризованный индекс по lft и rgt должен превратить большинство ваших запросов в просмотр / поиск кластеризованного индекса.
Единственный недостаток, который я вижу, заключается в том, что если вы размещаете иерархии прямо под корнем, то это может также включать перемещение многих других иерархий. Будете ли вы всегда добавлять на «правую» сторону корня? Это будет включать только обновление столбца rgt в корневой строке, что было бы хорошо. Если вы добавите в середину левой части корня, вам придется сместить все остальные иерархии справа от новой. Кроме того, насколько большой ваш стол? Это будет иметь некоторое влияние на вещи. Если он достаточно мал, то сдвиг этих иерархий может не иметь большого значения. Вы определенно хотите попробовать вставить правую сторону корня, если можете, хотя.
РЕДАКТИРОВАТЬ: Еще одна вещь ... вы смотрели во встроенный в SQL Server hierarchyid
тип данных?