티스토리 뷰

반응형

목표:
getNoticeList메서드 SQL 쿼리를 작성한다.

 

SQL 코드:

SELECT * FROM(
SELECT ROWNUM NUM, N.*
FROM (SELECT * FROM NOTICE ORDER BY REGDATE DESC) N
)
WHERE NUM BETWEEN 6 AND 10;

SELECT * FROM(
☞ 전체 데이터를 가져온다

SELECT ROWNUM NUM, N.*
☞ ROWNUM의 별칭 NUM과 아래의 서브 쿼리 전체 별칭 N의 데이터를 가져오는 서브 쿼리

FROM (SELECT * FROM NOTICE ORDER BY REGDATE DESC) N
)
☞ NOTICE내의 데이터를 REGDATE의 역순으로 정렬한 모든 데이터를 가져오는 별칭 N인 서브 쿼리내의 서브쿼리

WHERE NUM BETWEEN 6 AND 10;
☞ 전체 데이터의 ROWNUM의 별칭 NUM을 기준으로 6부터 10까지를 선택

 

 

자바 코드:

	public List<Notice> getNoticeList(String field, String query, int page){
		
		String sql = "SELECT * FROM( "
				+ "SELECT ROWNUM NUM, N.* "
				+ "FROM (SELECT * FROM NOTICE ORDER BY REGDATE DESC) N "
				+ ") "
				+ "WHERE NUM BETWEEN 6 AND 10";
		
		return null;
	}

 

 

결과: 
WHERE절의 숫자 6과 10을 변수로 바꾼 후 출력을 할 수 있도록 해야 한다.

 

반응형
댓글
공지사항