SQL 문장 귀속 쓰기 ~
Set @Id = 5; ---여기서 모 노드 수정하기
With RootNodeCTE(Id,ParentId)
As
(
Select Id,ParentId From BOM Where ParentId In (@Id)
Union All
Select BOM.Id,BOM.ParentId From RootNodeCTE
Inner Join BOM
On RootNodeCTE.Id = BOM.ParentId
)
Select * From RootNodeCTE
SQL Server 2000 환경에서의 요구 사항:
SQL code
create
table
AAA(ID
INT
,strNum1
varchar
(
8
),strNum2
varchar
(
8
),intTaxis
int
)
insert
into
AAA
select
1
,
'
01
'
,
'
001
'
,
1
insert
into
AAA
select
2
,
'
001
'
,
'
011
'
,
2
insert
into
AAA
select
3
,
'
001
'
,
'
010
'
,
1
insert
into
AAA
select
6
,
'
01
'
,
'
002
'
,
2
insert
into
AAA
select
4
,
'
002
'
,
'
021
'
,
1
insert
into
AAA
select
5
,
'
002
'
,
'
022
'
,
2
go
--
create
function
f_getChild(
@strNum1
VARCHAR
(
10
))
returns
@t
table
(strNum1
VARCHAR
(
10
),strNum2
VARCHAR
(
10
),
Level
INT
,Ord
varchar
(
100
))
as
begin
declare
@i
int
set
@i
=
1
insert
into
@t
select
strNum1,strNum2,
@i
,
right
(
'
0
'
+
strNum2,
3
)
from
AAA
where
strNum1
=
@strNum1
while
@@rowcount
<>
0
begin
set
@i
=
@i
+
1
insert
into
@t
select
a.strNum1,a.strNum2,
@i
,b.Ord
+
a.strNum2
from
AAA a,
@t
b
where
a.strNum1
=
b.strNum2
and
b.
Level
=
@i
-
1
and
not
exists
(
select
1
from
@t
where
strNum1
=
a.strNum1
and
strNum2
=
a.strNum2)
end
return
end
go
--
select
*
from
dbo.f_getChild(
'
01
'
)
order
by
Ord
go
--
/*
strNum1 strNum2 Level Ord ---------- ---------- ----------- ----------- 01 001 1 001 001 010 2 001010 001 011 2 001011 01 002 1 002 002 021 2 002021 002 022 2 002022
*/
--
drop
function
f_getChild
drop
table
AAA
go
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.