수색…


통사론

  • SELECT column_1 [, column_2]
    FROM table_1
    ORDER BY order_column
    LIMIT 행 _ 카운트 [OFFSET 행 _ 오프셋]
  • SELECT column_1 [, column_2]
    FROM table_1
    ORDER BY order_column
    LIMIT [row_offset,] row_count

비고

"제한"은 "테이블의 최대 행 수"를 의미 할 수 있습니다.

"오프셋"은 row 번호에서 선택을 의미합니다 (기본 키 값이나 필드 데이터 값과 혼동하지 마십시오)

한계 및 오프셋 관계

다음 users 테이블을 고려하십시오.

신분증 사용자 이름
1 사용자 1
2 사용자 2
사용자 3
4 사용자 4
5 User5

SELECT 쿼리 의 결과 집합에서 행 수를 제한하기 위해 LIMIT 절을 하나 또는 두 개의 양수 정수와 함께 인수 (0 포함)로 사용할 수 있습니다.

인수가 하나 인 LIMIT

하나의 인수가 사용되면 결과 집합은 다음과 같은 방식으로 지정된 수로 제한됩니다.

SELECT * FROM users ORDER BY id ASC LIMIT 2
신분증 사용자 이름
1 사용자 1
2 사용자 2

인수의 값이 0 이면 결과 집합이 비어 있습니다.

ORDER BY 절이 제시 될 결과 집합의 첫 번째 행을 지정하기 위해 중요 할 수도 있습니다 (다른 열에 의해 정렬 할 때).

두 개의 인수가있는 LIMIT

LIMIT 절에 두 개의 인수가 사용될 때 :

  • 첫 번째 인수는 결과 집합 행이 표시 될 행을 나타냅니다.이 번호는 제한된 결과 집합의 초기 행보다 이전 행을 나타내므로 오프셋으로 언급되는 경우가 많습니다. 이것은 인수가 값으로 0 을 받고 따라서 제한되지 않은 결과 세트의 첫 x 째 행을 고려하도록 허용합니다.
  • 두 번째 인수는 결과 집합에 반환 될 최대 행 수를 지정합니다 (한 인수의 예와 유사).

따라서 쿼리 :

SELECT * FROM users ORDER BY id ASC LIMIT 2, 3

다음 결과 집합을 표시합니다.

신분증 사용자 이름
사용자 3
4 사용자 4
5 User5

offset 인수가 0 일 때 결과 집합은 하나의 인수 LIMIT 절과 동일합니다. 이것은 다음과 같은 두 가지 쿼리를 의미합니다.

SELECT * FROM users ORDER BY id ASC LIMIT 0, 2

SELECT * FROM users ORDER BY id ASC LIMIT 2

동일한 결과 집합을 생성합니다.

신분증 사용자 이름
1 사용자 1
2 사용자 2

OFFSET 키워드 : 대체 구문

두 개의 인수가있는 LIMIT 절의 대체 구문은 다음과 같은 방식으로 첫 번째 인수 뒤에 OFFSET 키워드를 사용하는 것입니다.

SELECT * FROM users ORDER BY id ASC LIMIT 2 OFFSET 3

이 쿼리는 다음 결과 집합을 반환합니다.

신분증 사용자 이름
사용자 3
4 사용자 4

이 대체 구문에서 인수의 위치는 다음과 같이 전환됩니다.

  • 첫 번째 인수는 결과 집합에 반환 될 행 수를 나타냅니다.

  • 두 번째 인수는 오프셋을 나타냅니다.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow