반응형
이전글과 다음글 구하기, Query
1. 이전글
1-1. 첫번째 방법, 답글이 없는경우
SELECT * FROM CMTB_COMMON_BBS
WHERE SEQ IN(
SELECT MAX(SEQ)
FROM CMTB_COMMON_BBS
WHERE SEQ <8
)
WHERE SEQ IN(
SELECT MAX(SEQ)
FROM CMTB_COMMON_BBS
WHERE SEQ <8
)
1-2. 두번째 방법, 답글 이 있는경우
SELECT rownum, subject, seq
FROM CMTB_COMMON_BBS
WHERE
rownum = 1
and bbsid = 'TEST'
AND ref = 10-1
ORDER BY ref DESC, step
FROM CMTB_COMMON_BBS
WHERE
rownum = 1
and bbsid = 'TEST'
AND ref = 10-1
ORDER BY ref DESC, step
답글이 없는경우야 1-1 번 방법처럼 써도 상관 없겠지만, 답글이 있는경우 1-1번 방법을 쓰게되면 엉뚱 한 답글이 이전글이 되어 버린다.
즉 답글이 있는경우는 부모의 글이 생성된 순서를 desc(역순), 답글이 생성된 순서에 대해 Order By를 주면 간단히 해결됨.
참고로 1-2에서 ref ? -1
? => 현재 클릭된 게시 내용의 순번 ex)10
-1 => 이전글을 찾기위해 -1
-1 => 이전글을 찾기위해 -1
-- 생각해보니 1-1번에도 Order by 만 붙여주면 될것 같은데 ㅡ_ㅡ^
2. 다음글은, 다음에......?
위에거 반대로 하면 다음글 나오지 안을까? ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅎ
결국엔 잊어버려서 여기다 적는구나,ㅋ
rost Memory zzzzzzzzzzzzzzzzzzzzzzzzzzzz.
반응형
'DataBase > oracle' 카테고리의 다른 글
oracle table space create and user creation (0) | 2011.04.12 |
---|---|
Oracle User Creation And Authority[유저생성 및 권한] (0) | 2011.02.22 |
OracleDbConsoleOrcl em 작동 오류 - 서비스가 시작되지 않습니다. (0) | 2010.06.29 |
SELECT 로 Query문 만들기 (0) | 2010.04.14 |
ORACLE 월별 통계 (1~12월 표현) (2) | 2010.03.15 |