sql >> Database >  >> RDS >> Sqlserver

Wijzig een CTE SELECT in een door de gebruiker gedefinieerde functie voor een tabelwaarde

Verwijder de eerste ; en de order by clausule.

Alter FUNCTION GetDescendentSteps 
(   
@StepId INT 
)
RETURNS TABLE 
AS
RETURN
    WITH cteRecursion
         AS (SELECT
                 StepId
                 ,1 AS Level
             FROM
                 Step
             WHERE
                 StepId = @StepId
             UNION ALL
             SELECT
                 t.StepId
                 ,c.Level + 1
             FROM
                 Step t
                 INNER JOIN cteRecursion c
                     ON t.ParentStepId = c.StepId
            )
    SELECT
        StepId,Level
    FROM
        cteRecursion



  1. Rij met laatste waarde per klant en maand

  2. Een generieke kolom GEOGRAFIE hebben met PostGIS

  3. PDO voorbereide verklaringen in cache plaatsen

  4. Hoe krijg ik het resultaat van twee select-statements in een enkele rij?