Wednesday, May 12, 2010

Rekurzija u SQL-u

WITH SvaOdeljenja (OdelenjeId, NadOdelenjeId)
AS
(
SELECT OdelenjeId, NadOdelenjeId FROM Odelenje
WHERE OdelenjeId = ISNULL(@OdeljenjeId, OdelenjeId)
UNION ALL
SELECT J.OdelenjeId, M.OdelenjeId FROM Odelenje J
INNER JOIN SvaOdeljenja AS M
ON J.NadOdelenjeId = M.OdelenjeId
)
SELECT OdelenjeId FROM SvaOdeljenja
GO

No comments: