프로그래밍 정리/Oracle

오라클,mysql - 페이징 쿼리

Wooni0477 2020. 1. 18. 22:02
반응형

오라클 - 페이징 쿼리



-오라클

1
2
3
4
5
6
7
8
9
select
*
from (
select rownum, b.*
from (
    select 칼럼명1, 칼럼명2...
    from 테이블 명) b
where rownum >= 1 and rownum <=10;
cs



-mysql


1
2
3
4
5
6
7
8
9
10
11
select R1.* FROM(
    SELECT * FROM 테이블명
) R1
LIMIT 010
 
혹은
 
select R1.* FROM(
    SELECT * FROM 테이블명
) R1
LIMIT 10 OFFSET 0
cs


Limit 0, 10 (Limit offset, count)

해석=> 0(offset)번째에서 10(count)개를 가져온다.


Limit 10 offset 0

해석=> 0(offset)번째에서 10(count)개를 가져온다.


둘다 같은뜻임





-팁

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<sql id="header">
    select R1.* FROM(    
</sql>
 
<sql id="tail">
    ) R1
    LIMIT #{count} OFFSET #{point}    
</sql>
 
<sql id="test" resultType="com.cloud0477.test">
    <include refid="header"/>
         select *
         from test
    <include refid="tail"/>
</sql>
cs


이런식으로 공통으로 사용할수 있다.

반응형