2022-02-28
페이징 처리에서 많이 사용되는 ROWNUM을 MySQL에서 사용하는 방법을 알아보도록 하자.
- 사용법
mysql에서의 ROWNUM은 반드시 초기화해주는 과정이 필요하다. 이는 SELECT 절 호출 이전에 FROM이나 WHERE 절에서 초기화해주는데 상황에 맞게 사용해 주면 된다.
- from에서 사용
select @rownum := @rownum + 1 rownumber, t.*
from test t,
(select @rownum := 0) rownum
- where 에서 사용
select @rownum := @rownum + 1 rownumber, t.*
from test t
where(@rownum := 0) = 0;
- 역순사용
역순 사용은 이미 호출된 ROWNUM을 서브 쿼리로 불러와 내림차순 해주면 된다.
select A.* from
(select CONVERT(@rownum:=@rownum+1, SIGNED) rownumber, t.*
from test t
where(@rownum := 0) = 0) A
order by A.rownumber desc
메인 이미지 출처 : Photo by Francesco Zivoli on Unsplash