Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So erhalten Sie alle Kinder eines Elternteils und dann ihre Kinder mithilfe der Rekursion in der Abfrage

DECLARE @Id int = your_UnitId
;WITH cte AS 
 (
  SELECT a.Id, a.parentId, a.name
  FROM customer a
  WHERE Id = @Id
  UNION ALL
  SELECT a.Id, a.parentid, a.Name
  FROM customer a JOIN cte c ON a.parentId = c.id
  )
  SELECT parentId, Id, name
  FROM cte

Demo auf SQLFiddle