πŸ”™λ’€λ‘œκ°€κΈ°

JPAλŠ” νŽ˜μ΄μ§•μ„ λ‹€μŒ 두 API둜 좔상화

setFirstResult(int startPosition) : 쑰회 μ‹œμž‘ μœ„μΉ˜(0λΆ€ν„° μ‹œμž‘)

setMaxResults(int maxResult) : μ‘°νšŒν•  데이터 수

νŽ˜μ΄μ§• API μ˜ˆμ‹œ

//νŽ˜μ΄μ§• 쿼리
 String jpql = "select m from Member m order by m.name desc";
 List<Member> resultList = em.createQuery(jpql, Member.class)
 .setFirstResult(10)
 .setMaxResults(20)
 .getResultList();

νŽ˜μ΄μ§• API - MySQL λ°©μ–Έ

SELECT
	M.ID AS ID,
	M.AGE AS AGE,
	M.TEAM_ID AS TEAM_ID,
	M.NAME AS NAME 
FROM
	MEMBER M 
ORDER BY
	M.NAME DESC LIMIT ?, ?

νŽ˜μ΄μ§• API - Oracle λ°©μ–Έ

SELECT * FROM
	( SELECT ROW_.*, ROWNUM ROWNUM_ 
	FROM
		( SELECT
			M.ID AS ID,
			M.AGE AS AGE,
			M.TEAM_ID AS TEAM_ID,
			M.NAME AS NAME 
		FROM MEMBER M 
		ORDER BY M.NAME 
		) ROW_ 
	WHERE ROWNUM <= ?
	) 
WHERE ROWNUM_ > ?