When I execute the below query, it throws an error as
Msg 530, Level 16, State 1, Line 4 The statement terminated. The maximum recursion 100 has been exhausted before statement completion.
That too duplicate rows are displaying.
;WITH CTE_Entity AS
(
SELECT EH.EntityHierarchyId ,
E.EntityId ,
E.EntityName AS ClientName,
E.UniqueEntityIdentifier AS ClientUniqueIdentifier,
CAST(NULL AS VARCHAR(MAX))AS MemberName,
CAST(NULL AS VARCHAR(MAX)) AS MemberUniqueIdentifier
FROM EntityHierarchy EH
INNER JOIN RefEntity E ON EH.EntityId = E.EntityId
WHERE EH.ParentEntityId IS NULL
UNION ALL
SELECT CTE.EntityHierarchyId ,
CTE.EntityId ,
CTE.ClientName AS ClientName,
CTE.ClientUniqueIdentifier AS ClientUniqueIdentifier,
CAST(EE.EntityName AS VARCHAR(MAX))AS MemberName,
CAST(EE.UniqueEntityIdentifier AS VARCHAR(MAX)) AS MemberUniqueIdentifier
FROM CTE_Entity CTE
INNER JOIN EntityHierarchy EHH ON CTE.EntityId = EHH.ParentEntityId
INNER JOIN RefEntity EE ON EHH.EntityId = EE.EntityId
)
SELECT * FROM CTE_Entity
Any help will be appreciated.