안녕하세요 이전글,다음글 조회를 위해서 LEAD,LAG 를 쓰고 있습니다.
1. 이미지 처럼 테이블이 있습니다.
2. 아래 퀴리를 이용해서 데이터를 조회하면 정상적으로 다 출력 됩니다 특히 REPLYCNT 컬럼을 보시면 1이라고 들어있습니다.
1 | SELECT * FROM tb1_board where bno=21 ; |
3. 그러나 BNO = 21 번의 다음글인 4를 조회하면 REPLYCNT의 값이 0이 나옵니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | SELECT A.* FROM ( SELECT bno, LEAD(bno, 1) OVER ( ORDER BY bno DESC ) AS next_bno, LEAD(title, 1, '이전글이 없습니다' ) OVER ( ORDER BY bno DESC ) AS next_title, LEAD(REPLYCNT) OVER ( ORDER BY bno DESC ) AS REPLYCNT, LEAD(writer, 1) OVER ( ORDER BY bno DESC ) AS next_writer, LEAD(regdate, 1) OVER ( ORDER BY bno DESC ) AS next_regdate, LAG(bno, 1) OVER ( ORDER BY bno DESC ) AS pre_bno, LAG(title, 1, '다음글이 없습니다' ) OVER ( ORDER BY bno DESC ) AS pre_title, LEAD(REPLYCNT) OVER ( ORDER BY REPLYCNT DESC ) AS REPLYCNT1, LAG(writer, 1) OVER ( ORDER BY bno DESC ) AS pre_writer, LAG(regdate, 1) OVER ( ORDER BY bno DESC ) AS pre_regdate FROM tb1_board ) A where bno=4; |
결론: 다른 값은 다 나오는데 숫자형인 REPLYCNT 컬럼의 값만 나오질 않습니다. 아무리 애를 써봐도 답을 못찾아서 조언을 구하려 글을 남겨봅니다. 알려주시면 감사하겠습니다.