Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Hierarchical SQL Select
Message
From
04/09/2009 10:15:37
John Baird
Coatesville, Pennsylvania, United States
 
 
To
04/09/2009 10:02:07
General information
Forum:
Microsoft SQL Server
Category:
SQL syntax
Miscellaneous
Thread ID:
01422513
Message ID:
01422654
Views:
45
>>John,
>>
>>Try (this is a working version - used some help)
>>
>>
>>;with cte_t AS
>> (
>> SELECT T1.RightsName,
>>       T1.pk_rights,
>>       t1.fk_rights,
>>       0 AS LEVEL,
>>
>>       Cast(null as varchar(max)) AS ParentName, 
>>
>>       T2.RightsOrder,
>>       T2.Description AS ChildDescr
>>  FROM @Test T1
>> INNER join @test T2 ON T1.pk_rights = T2.pk_rights
>> WHERE T1.fk_rights IS NULL
>> UNION all
>>
>> SELECT T1.RightsName,
>>       T1.pk_rights,
>>
>>       T1.fk_rights,
>>       LEVEL + 1 AS LEVEL,
>>
>>       D.RightsName AS ParentName,
>>       T1.RightsOrder,
>>       T1.Description AS ChildDescr
>>  FROM @Test T1
>>
>> INNER join cte_t D ON T1.fk_rights = D.pk_rights
>>)
>>SELECT * FROM cte_t ORDER BY fk_rights, RightsOrder, LEVEL
>>
>
>If I look at (1) the desired output see message#1422528 and (2) your order by - I'd be surprised
>
>What he wants is something like a depth first (recursive descent ?), or treeview like

Correct.
Previous
Reply
Map
View

Click here to load this message in the networking platform