>백엔드 개발 >PHP 튜토리얼 >오프셋 및 제한을 사용하여 MySQL의 총 결과 수를 결정하는 방법은 무엇입니까?

오프셋 및 제한을 사용하여 MySQL의 총 결과 수를 결정하는 방법은 무엇입니까?

DDD
DDD원래의
2024-10-23 10:56:30869검색

How to Determine the Total Result Count in MySQL with Offset and Limit?

MySQL 오프셋 및 제한을 사용하여 총 결과 수 결정

오프셋 및 제한을 사용하여 페이지 매김을 구현할 때 총 결과 수를 결정하는 것이 중요합니다. 필요한 페이지를 계산합니다. 쿼리를 두 번(LIMIT를 사용하거나 사용하지 않고 한 번) 실행하는 것이 중복되는 것처럼 보일 수 있지만 더 나은 접근 방식이 있습니다.

MySQL은 SQL_CALC_FOUND_ROWS를 사용하여 추가 쿼리 없이 총 결과 수를 검색하는 방법을 제공합니다. 기본 쿼리 앞에 이 키워드를 추가하면 MySQL은 LIMIT 절 없이 반환되었을 총 행 수를 계산합니다.

예는 다음과 같습니다.

<code class="sql">SELECT SQL_CALC_FOUND_ROWS *
FROM directory_listing
WHERE category_id = <category_id>
LIMIT offset, limit;</code>

이 쿼리를 실행한 후, 다음 코드를 사용하여 총 결과 수를 검색할 수 있습니다.

$query = $this->db->query('SELECT FOUND_ROWS() AS total_count;');
$total_count = $query->first_row()->total_count;

이 접근 방식을 사용하면 추가 쿼리를 실행하지 않고도 총 결과 수를 효율적으로 검색할 수 있습니다. SQL_CALC_FOUND_ROWS를 활용하면 페이지 매김 기능의 성능과 리소스 활용도를 향상시킬 수 있습니다.

위 내용은 오프셋 및 제한을 사용하여 MySQL의 총 결과 수를 결정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.