Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL LIMIT로 특정 범위의 행 조회하기 – 처음 3개 행만 출력하는 방법

MySQL LIMIT 절의 기본 개념

MySQL에서 LIMIT 절은 쿼리 결과 중 원하는 만큼의 행만 가져올 때 사용합니다. 특히 시작 인덱스, 행 개수 형태로 범위를 지정하면, 결과 집합의 특정 구간만 손쉽게 추출할 수 있습니다.

기본 문법

SELECT * FROM 테이블명 LIMIT 시작인덱스, 가져올행수;

여기서 시작 인덱스는 0부터 시작한다는 점에 유의해야 합니다. 즉, 첫 번째 행의 인덱스는 0입니다. 따라서 처음 3개 행을 조회하려면 LIMIT 0, 3과 같이 작성하면 됩니다.

예제 테이블 생성

먼저 실습용 테이블을 생성하겠습니다.

mysql> create table demo67
-> (
-> id int,
-> user_name varchar(40),
-> user_country_name varchar(20)
-> );
Query OK, 0 rows affected (0.72 sec)

샘플 데이터 삽입

INSERT 문을 사용해 몇 개의 레코드를 추가합니다.

mysql> insert into demo67 values(10,'John','US');
Query OK, 1 row affected (0.19 sec)

mysql> insert into demo67 values(1001,'David','AUS');
Query OK, 1 row affected (0.14 sec)

mysql> insert into demo67 values(101,'Mike','UK');
Query OK, 1 row affected (0.09 sec)

mysql> insert into demo67 values(102,'Carol','AUS');
Query OK, 1 row affected (0.11 sec)

mysql> insert into demo67 values(110,'Chris','US');
Query OK, 1 row affected (0.36 sec)

mysql> insert into demo67 values(105,'David','AUS');
Query OK, 1 row affected (0.08 sec)

전체 데이터 확인

SELECT 문으로 테이블의 모든 레코드를 조회해 보겠습니다.

mysql> select *from demo67;

실행 결과는 다음과 같습니다.

+------+-----------+-------------------+
| id   | user_name | user_country_name |
+------+-----------+-------------------+
| 10   | John      | US                |
| 1001 | David     | AUS               |
| 101  | Mike      | UK                |
| 102  | Carol     | AUS               |
| 110  | Chris     | US                |
| 105  | David     | AUS               |
+------+-----------+-------------------+
6 rows in set (0.00 sec)

총 6개의 행이 저장되어 있는 것을 확인할 수 있습니다.

LIMIT로 처음 3개 행만 조회하기

이제 LIMIT 절에 시작 인덱스 0과 행 수 3을 지정하여 처음 세 개의 행만 가져오는 쿼리를 실행해 보겠습니다.

mysql> select *from demo67 limit 0,3;

실행 결과는 다음과 같습니다.

+------+-----------+-------------------+
| id   | user_name | user_country_name |
+------+-----------+-------------------+
| 10   | John      | US                |
| 1001 | David     | AUS               |
| 101  | Mike      | UK                |
+------+-----------+-------------------+
3 rows in set (0.00 sec)

정리

LIMIT 시작인덱스, 행수 형식을 활용하면 결과 집합에서 원하는 위치의 데이터만 간편하게 추출할 수 있습니다. 예를 들어 두 번째 행부터 3개를 가져오고 싶다면 LIMIT 1, 3처럼 시작 인덱스만 조정하면 됩니다. 이 방식은 페이지네이션(pagination) 기능을 구현할 때도 널리 활용됩니다.