이 재귀 함수가 있습니다. 계층 값의 테이블의 경우 , 나는 ID를 받아 일정 수준 (unity_id)재귀 함수에서 확장 가능한 값 반환
CREATE FUNCTION getObs
(
@obs int
)
RETURNS table -- <-- returns table so it's a table function
as
return -- <- here's actual return
(
WITH ret2 AS(
SELECT *
FROM OBS
WHERE OBS_Id = @obs
UNION ALL
SELECT t.*
FROM OBS as t INNER JOIN
ret2 r ON t.OBS_Id = r.UnitId
)
SELECT *
FROM ret2 r
WHERE unity_id = 7
)
위해 해당 ID의 부모를 반환하고자하지만 테이블 대신 int를 반환해야, 그래서 ' ve는 이것을 시도했다. 나는 내가 원하는 속성을 선택하고있어 "RETURNS 테이블" 을 "int를 돌려"하지 놨는데 내가 SQL과 기능에 새로운 해요,
CREATE FUNCTION getObs
(
@obs int
)
RETURNS int
as
return
(
WITH ret2 AS(
SELECT *
FROM OBS
WHERE OBS_Id = @obs
UNION ALL
SELECT t.*
FROM OBS as t INNER JOIN
ret2 r ON t.OBS_Id = r.UnitId
)
SELECT r.OBS_Id
FROM ret2 r
WHERE unity_id = 7
)
어떤 도움 주셔서 감사합니다 (그것은 INT의) .