예제가 포함된 MySQL LIMIT 및 OFFSET

LIMIT 키워드는 무엇입니까?

제한 키워드는 쿼리 결과에 반환되는 행 수를 제한하는 데 사용됩니다.

SELECT, UPDATE 또는 DELETE 명령과 함께 사용할 수 있습니다. LIMIT 키워드 구문

LIMIT 키워드의 구문은 다음과 같습니다.

SELECT {fieldname(s) | *} FROM tableName(s) [WHERE condition] LIMIT  N;

여기를 클릭하십시오.

  • “SELECT {필드 이름 | *} 테이블 이름에서” 이다 SELECT 문 쿼리에서 반환하려는 필드가 포함되어 있습니다.
  • “[WHERE 조건]” 선택 사항이지만 제공되면 결과 집합에 필터를 지정하는 데 사용할 수 있습니다.
  • “리미트 N” 은 키워드와 N 0부터 시작하는 임의의 숫자입니다. 제한이 쿼리에 어떤 레코드도 반환하지 않으므로 0을 입력합니다. 5라는 숫자를 입력하면 XNUMX개의 레코드가 반환됩니다. 지정된 테이블의 레코드가 N보다 작으면 쿼리된 테이블의 모든 레코드가 결과 집합에 반환됩니다.

예를 살펴보겠습니다 –

SELECT *  FROM members LIMIT 2;
membership_ number full_ names gender date_of _birth date_of _registration physical_ address postal_ address contact_ number email credit_ card_ number
1 Janet Jones Female 21-07-1980 NULL First Street Plot No 4 Private Bag 0759 253 542 janetjones@yagoo.cm NULL
2 Janet Smith Jones Female 23-06-1980 NULL Melrose 123 NULL NULL jj@fstreet.com NULL

위 스크린샷을 보면 알 수 있듯이 두 명의 멤버만 반환되었습니다.

데이터베이스에서만 10명의 회원 목록 가져오기

Myflix 데이터베이스에서 처음 10명의 등록 회원 목록을 가져오고 싶다고 가정해 보겠습니다. 우리는 follo를 사용할 것입니다wing 이를 달성하기 위한 스크립트입니다.

SELECT *  FROM members LIMIT 10;

위 스크립트를 실행하면 아래와 같은 결과가 나타납니다.

membership_ number full_ names gender date_of _birth date_of _registration physical_ address postal_ address contact_ number email credit_ card_ number
1 Janet Jones Female 21-07-1980 NULL First Street Plot No 4 Private Bag 0759 253 542 janetjones@yagoo.cm NULL
2 Janet Smith Jones Female 23-06-1980 NULL Melrose 123 NULL NULL jj@fstreet.com NULL
3 Robert Phil Male 12-07-1989 NULL 3rd Street 34 NULL 12345 rm@tstreet.com NULL
4 Gloria Williams Female 14-02-1984 NULL 2nd Street 23 NULL NULL NULL NULL
5 Leonard Hofstadter Male NULL NULL Woodcrest NULL 845738767 NULL NULL
6 Sheldon Cooper Male NULL NULL Woodcrest NULL 976736763 NULL NULL
7 Rajesh Koothrappali Male NULL NULL Woodcrest NULL 938867763 NULL NULL
8 Leslie Winkle Male 14-02-1984 NULL Woodcrest NULL 987636553 NULL NULL
9 Howard Wolowitz Male 24-08-1981 NULL SouthPark P.O. Box 4563 987786553 lwolowitz[at]email.me NULL

LIMIT 절의 N이 테이블의 총 레코드 수보다 크므로 쿼리에서는 9개의 멤버만 반환되었습니다.

위의 스크립트를 다음과 같이 다시 작성합니다.

SELECT *  FROM members LIMIT 9;

쿼리 결과 집합에는 9개의 행만 반환됩니다.

LIMIT 쿼리에서 OFF SET 사용

최대 XNUMXW 출력을 제공하는 오프 세트 value는 LIMIT 키워드와 함께 가장 자주 사용됩니다. OFF SET 값을 사용하면 데이터 검색에서 시작할 행을 지정할 수 있습니다.

행 중간부터 시작하여 제한된 수의 멤버를 가져오려고 한다고 가정하면 이를 달성하기 위해 오프셋 값과 함께 LIMIT 키워드를 사용할 수 있습니다. 아래 표시된 스크립트는 두 번째 행부터 시작하는 데이터를 가져오고 결과를 2로 제한합니다.

SELECT * FROM `members` LIMIT 1, 2;

myflixdb에 대해 MySQL 워크벤치에서 위 스크립트를 실행하면 다음과 같은 결과가 나타납니다.wing 결과.

membership_ number full_ names gender date_of _birth date_of _registration physical_ address postal_ address contact_ number email credit_ card_ number
2 Janet Smith Jones Female 23-06-1980 NULL Melrose 123 NULL NULL jj@fstreet.com NULL
3 Robert Phil Male 12-07-1989 NULL 3rd Street 34 NULL 12345 rm@tstreet.com NULL

Note that here OFFSET = 1 Hence row#2 is returned & Limit = 2, Hence only 2 records are returned

LIMIT 키워드는 언제 사용해야 합니까?

myflixdb 위에서 실행되는 애플리케이션을 개발한다고 가정해 보겠습니다. 우리 시스템 디자이너는 느린 로드 시간에 대응하기 위해 페이지에 표시되는 레코드 수를 페이지당 20개 레코드로 제한하도록 요청했습니다. 이러한 사용자 요구 사항을 충족하는 시스템을 구현하려면 어떻게 해야 합니까? 이러한 상황에서는 LIMIT 키워드가 유용합니다. 쿼리에서 반환되는 결과를 페이지당 20개의 레코드로 제한할 수 있습니다.

요약

  • LIMIT 키워드는 결과 집합에서 반환되는 행 수를 제한하는 데 사용됩니다.
  • LIMIT 숫자는 0부터 위쪽으로 임의의 숫자가 될 수 있습니다. 영(0)이 제한으로 지정되면 결과 집합에서 어떤 행도 반환되지 않습니다.
  • OFF SET 값을 사용하면 데이터 검색에서 시작할 행을 지정할 수 있습니다.
  • SELECT, UPDATE 또는 DELETE 명령과 함께 사용할 수 있습니다. LIMIT 키워드 구문