database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 6880 게시물 읽기
No. 6880
답변형 댓글 구현 도움 부탁드립니다.
작성자
최덕현(javarose)
작성일
2015-02-02 18:09ⓒ
2015-02-02 21:01ⓜ
조회수
5,697

음 mssql 로 답변형을 구현할려고 하는데

막히네요;;;

 

가령 테이블 명 - temp

seq(순번), pseq(부모순번), dept(깊이)

 

형식으로 있다고 했을때

 

페이징으로 가져올필요는 없고 한번에 가져올 쿼리가 어떻게 되나요?

 

1 글

1-1 글

1-1-1 글

2 글

2-1 글

 

의 형식으로 한번의 쿼리로 가져올수 있나요? 저 위의 3컬럼 가지고...;?

아무래도 한컬럼 더 있어야 겠죠?

 

어떻게 해야 순서대로 글을 가져오는 쿼리가 가능한지....

 

 

고수님들 조언 부탁드립니다.

 

재귀형태 폼으로 활용할려니 가져올때 고민이 생기네요;; 흠 기존의 답변형 설계로 가야하나;;

 

 

이 글에 대한 댓글이 총 2건 있습니다.

WITH tmp ( seq, pseq, dept )

AS
(
SELECT 1, 0, 'depth 따위 없어도?'
UNION ALL SELECT 2, 1, 'depth 따위 없어도?'
UNION ALL SELECT 3, 2, 'depth 따위 없어도?'
UNION ALL SELECT 4, 0, 'depth 따위 없어도?'
UNION ALL SELECT 5, 4, 'depth 따위 없어도?'
UNION ALL SELECT 6, 1, 'depth 따위 없어도?'
)
,
sj( seq, pseq, oseq, lvl )
AS
(
SELECT seq, pseq, CAST( seq AS VARCHAR(MAX) ) + '|', 1 as lvl
FROM tmp
WHERE pseq = 0
UNION ALL
SELECT tmp.seq, tmp.pseq, oseq + CAST( tmp.seq AS VARCHAR(MAX) ) + '|', sj.lvl + 1
FROM sj
INNER JOIN tmp ON sj.seq = tmp.pseq
)
SELECT *
FROM sj
ORDER BY oseq
;
우욱님이 2015-02-03 09:56에 작성한 댓글입니다. Edit

감사합니다 ^^

최덕현(javarose)님이 2015-02-03 16:42에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
6883SELECT문 질문드려요 [2]
초보자
2015-02-13
5236
6882매월 일자및 요일 출력방법 좀 알려주세요 [2]
신상우
2015-02-11
5376
6881점검 부탁드립니다. [1]
예진예랑
2015-02-08
6356
6880답변형 댓글 구현 도움 부탁드립니다. [2]
최덕현
2015-02-02
5697
6879mssql복구중 관련 문의
왕초보
2015-01-29
5568
6878두 테이블을 조인 후 left table에 하나의 ROW로 합칠 수 있을까요? [1]
꽃씨하나
2015-01-27
5772
6877조인에 대한 문의입니다 [13]
kshap
2015-01-22
6418
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.016초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다