确定SQL中的层次结构级别

时间:2013-12-19 07:24:34

标签: sql sql-server tsql

我有一个名为物料清单的ERP标准功能的数据,它将具有树结构。

我有4列为Unique_Id,from,is_main和srno

所以这里第1列是唯一的Id,第2列表示其父行,第3列表示它是否有子集,第4列只是另一系列的子集。

屏幕截图的链接:Screenshots

因此,Picture表示上述数据的层次结构。

所以我需要将答案作为层次结构级别。如图所示,层次结构最多有4个阶段。

1 个答案:

答案 0 :(得分:0)

这是示例查询,您必须根据您的更改

WITH temp AS 
(
    SELECT A.Unique_Id, A.from, A.is_main , A.srno
    FROM [dbo].[Your_Table_Name] A

    UNION ALL

    SELECT B.Unique_Id, A.from, B.is_main , B.srno
    FROM temp AS B

    INNER JOIN [dbo].[Your_Table_Name] A ON B.from= A.Unique_Id

    WHERE A.from IS NOT NULL
)
SELECT * FROM  temp