Revision: 5667
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at March 24, 2008 18:00 by rengber
Initial Code
WITH RecursiveCategories (CategoryHint, CategoryID, CatName, CatLevel, SearchKeywords, ParentCategoryId, ePagesOID) AS
(
Select I.CategoryHint,
C.CategoryId,
C.Name as CatName,
C.CatLevel,
C.SearchKeywords,
C.ParentCategoryId,
I.ePagesOID
From Core.Inventory I
left join Core.ProductBase PB on PB.ProductId = I.ProductId
left join Core.ProductCategory PC on PC.ProductId = PB.ProductId
left join Core.Category C on C.CategoryId = PC.CategoryID
Where I.ePagesOID = @ePagesId
UNION ALL
Select RC.CategoryHint,
C.CategoryId,
C.Name as CatName,
C.CatLevel,
C.SearchKeywords,
C.ParentCategoryId,
RC.ePagesOID
From Core.Category C
join RecursiveCategories RC on C.CategoryID = RC.ParentCategoryID
Where RC.ePagesOID = @ePagesId
and RC.ParentCategoryId is not null
)
Select CategoryHint, CatName, CatLevel, SearchKeywords, CategoryId, ParentCategoryId from RecursiveCategories ORDER BY CatLevel
Initial URL
http://www.sqlservercentral.com/articles/Development/recursivequeriesinsqlserver2005/1760/
Initial Description
Initial Title
TSQL for Recursive Select Using Common Table Expressions
Initial Tags
sql
Initial Language
SQL