• Необходимо создать функцию T-SQL для работы с таблицей, хранящей дерево?

    @purple_cat Автор вопроса
    Пробую использовать такой код, но результат - пустая таблица, т.к. в @sp_level остается 0. Можете подсказать как исправить, чтобы @sp_level увеличивался?
    DECLARE @sp_level INT
    SET @sp_level=0;
    
    WITH [tree] ([sp_id], [sp_parent], [sp_name], sp_level) 
    		AS   
    	(  
    		SELECT [sp_id], [sp_parent], [sp_name], 0 AS sp_level 
    		FROM [site_pages_new]
    		WHERE [sp_id] = 1
    		UNION ALL  
    		SELECT e.[sp_id], e.[sp_parent], e.[sp_name], @sp_level + 1  
    		FROM [site_pages_new] AS e  
    			INNER JOIN [tree] AS d  
    			ON e.[sp_id] = d.[sp_parent]   
    	)  
    	SELECT [sp_id], [sp_parent], [sp_name], @sp_level
    	FROM [site_pages_new] 
    	WHERE @sp_level <= 2