0
이 SQL Server 코드를 Oracle 코드로 변환 할 수 없습니다. 나는 SQL 전문가가 아니므로이 코드를 오라클 호환으로 변환하는 데 도움을 줄 수 있습니다.SQL Server 대 Oracle 변환
Declare @lvl as int
Declare @rows as int
DECLARE @foo as Table(
KV_MANAGERNR int,
KV_PERSONNR varchar(10),
ord int,
lvl int)
INSERT @foo (KV_MANAGERNR, KV_PERSONNR, ord, lvl)
select KV_MANAGERNR, KV_PERSONNR, row_number() over(order by KV_PERSONNR), 0
from PERSONSMANAGER where KV_MANAGERNR='127723'
set @[email protected]@ROWCOUNT
set @lvl=0
--Do recursion
WHILE @rows > 0
BEGIN
set @lvl = @lvl + 1
INSERT @foo (KV_MANAGERNR, KV_PERSONNR, ord, lvl)
SELECT DISTINCT b.KV_MANAGERNR, b.KV_PERSONNR, row_number() over(order
by b.KV_PERSONNR), @lvl
FROM PERSONSMANAGER b
inner join @foo f on b.KV_MANAGERNR = f.KV_PERSONNR
--might be multiple paths to this recursion so eliminate duplicates
left join @foo dup on dup.KV_PERSONNR = b.KV_PERSONNR
WHERE f.lvl = @lvl-1 and dup.KV_PERSONNR is null
set @[email protected]@ROWCOUNT
END
SELECT DISTINCT KV_PERSONNR from @foo order by KV_PERSONNR
어떤 오류 (들)을받을 수있는 방법은 무엇입니까? – SchmitzIT
이 변수를 선언하는 중에 Line 1 & 2 구문 오류가 발생했습니다. 그리고 더 많은 오류 –
그래서 당신은 오라클에서 변수를 선언하는 방법을 찾으려고 시도 했습니까? SQL Server와 다른 구문을 사용하려면 Google 검색이 1 번 필요합니다. 제 제안은 오류 1을 1로 풀기 시작한다는 것입니다. 다음 오류가 발생할 가능성이 높습니다. 문제가 발생하면 특정 요청과 함께 항상 새로운 질문을 게시 할 수 있습니다. 지금은 누군가가 당신을 위해 코드를 번역하기를 원하는 것처럼 보입니다. 그래서 그런 의미가 아닙니다. 우리는 특정 문제로 당신을 도와주고 싶지만, 당신 편에서 약간의 노력을 볼 것으로 합리적으로 기대합니다. – SchmitzIT