본문 바로가기
SQL

SQL TOP,LIMIT, ROWNUM 구문

by 진격의 파파 2013. 8. 20.
반응형

 

 

안녕하세요!! 좋은 아침입니다.

이번 포스팅에서는 가져올 레코드수를 지정할 수 있는 구문에 대해서 알아보겠습니다.

제목에 TOP, LIMIT, ROWNUM 이렇게 3가지를 적은 이유는 데이타베이스마다 구문이 틀리기 때문입니다.

 

MS-SQL : TOP

MY-SQL : LIMIT

ORACLE : ROWNUM

 

 

MS-SQL 예제

1. SELECT TOP 10 number * FROM table_name;

2. SELECT TOP 10 percent * FROM table_name;

// 감이 빠른 분들이라면 벌써 위 구문이 아~ 어떤 내용이구나 라고 이해하셨을듯 합니다.

// 첫 번째 구문은 10개의 레코드를 가져오라는 구문이며, 두 번째는 모든 레코드 중에서 10퍼센트를 가져오라는 구문입니다. 그리고 기본적으로 ORDER BY 구문이 없다면 가장먼저 입력된 테이블의 레코드를 가져오게 됩니다. 다시말하면 기본적으로 오름차순으로 레코드를 가져오게 된다는 뜻입니다.

 

 

MY-SQL 예제

SELECT *  FROM table_name LIMIT 10;

// MY-SQL에서는 LIMIT 구문을 사용하여 레코드를 가져옵니다. 마찬가지로 처음 입력된 값을 기준으로 10개의 레코드를 가져오게 됩니다. PHP에서 MY-SQL을 많이 사용하기 때문에 잘 알아두시기 바랍니다. 참고적으로 정렬을 내림차순으로 바꾸고 싶을 경우

SELECT *  FROM table_name order by column_name desc LIMIT 10; 처럼 order by 구문을 사용하여 변경할 수 있습니다.

 

 

ORACLE 예제

SELECT * FROM table_name WHERE ROWNUM <= 5;

// ORACLE에서는 ROWNUM이라는 구문을 사용하는데 사실 그 쓰임새는 더 복잡합니다. 오라클을 공부하는 분들은 ROWNUM에 대해서 더 많이 찾아보시고 학습을 하는게 좋을듯합니다.

 

 

다음 포스팅에서는 SQL where 구문에서 잠깐 설명했던 like 구문에 대해서 자세히 알아보겠습니다.

그럼 좋은하루 보내길 바랍니다.

 

반응형

'SQL' 카테고리의 다른 글

SQL IN 구문  (14) 2013.08.22
SQL LIKE 구문  (0) 2013.08.21
SQL UPDATE, DELETE 구문  (0) 2013.08.19
SQL INSERT INTO 구문  (0) 2013.08.16
SQL ORDER BY 구문  (0) 2013.08.15