안녕하세요 한가지 여쭈어 보고 싶은게 있어 질문드립니다
with 재귀 쿼리 형식으로 개발을 하고 있는데요
cte 에서 ROW_NUMBER()은 사용 불가한가요? 고수님들의 도움 부탁드립니다
Comment 3
-
항해자™
2016.06.05 21:39
가능합니다,, -
밥먹는푸우
2016.06.05 21:47
Create Table tb_Board
(
Num Bigint Identity(1,1) Primary Key ,
BType Varchar(10) ,
Title Varchar(500) ,
Content Text ,
Ip varchar(15) ,
Parent Bigint ,
WriteId varchar(20) ,
WriteDate Smalldatetime ,
ModfiyID varchar(20) ,
ModfiyDate Smalldatetime ,
ViewCount int
);with c_tblx as (
select 0 as emplevel
,*
, convert(varchar(100), ' / ' +cast(Parent as varchar(100)))
path_order -- siblings by
from tb_Board
where Parent = 1 -- start with
union all
select emplevel + 1
,a.*
, convert(varchar(100), b.path_order + ' / ' + cast(a.Parent as varchar(100)))
-- siblings by
from tb_Board a
join c_tblx b
on a.Parent = b.num -- connect by prior
)
select replicate(' ', emplevel * 2) + cast(Parent as varchar(100))
, *
from c_tblxCTE 한 행에서 전체 건수와 현재 ROW 알고 싶은데...
-
Terry
2016.06.07 14:19
CTE 결과를 임시테이블에 Insert 후
해당테이블에서 Row_Number를 Update해서 확인하시면 될듯하네요..

