sql >> Database >  >> RDS >> Sqlserver

Hoe kan ik deze Sql Server-hiërarchie gemakkelijk afvlakken tot een overgenomen inclusieve lijst?

U kunt dit doen met een recursieve algemene tabeluitdrukking (cte).

WITH X (ProductId, CategoryId) AS (
    SELECT ProductId, CategoryId FROM #ProductCategory
    UNION ALL
    SELECT X.ProductId, C.ParentCategoryId FROM X
    INNER JOIN #Category C ON X.CategoryId = C.CategoryId
)
SELECT ProductId, CategoryId FROM X ORDER BY CategoryId, ProductId

Meer informatie op http://msdn.microsoft.com/en-us/ bibliotheek/ms186243.aspx




  1. Datamapper ORM- Codeigniter Advance Relationship

  2. PDO met MySQL werkt niet bij e-mailactivering

  3. Efficiënte manier om strings te splitsen met CTE

  4. 2 manieren om de ASCII-code voor een bepaald personage in MariaDB te retourneren