PHP PDO에서 행 수를 계산하는 방법
PHP에서 데이터베이스에 액세스하기 위한 업계 표준 라이브러리인 PDO에는 계산을 위한 전용 방법이 부족합니다. SELECT 쿼리에서 반환된 행. 일반적인 해결 방법은 count($results->fetchAll())을 활용하는 것이지만 항상 가장 효율적인 접근 방식은 아닙니다.
PDOStatement::rowCount
PDO 문 개체는 rowCount 메서드를 노출합니다. 그러나 공식 PDO 문서에 따르면:
For most databases, PDOStatement::rowCount() does not return the number of rows affected by a SELECT statement. Instead, use PDO::query() to issue a SELECT COUNT(*) statement with the same predicates as your intended SELECT statement, then use PDOStatement::fetchColumn() to retrieve the number of rows that will be returned. Your application can then perform the correct action.
Counting Rows with Existing Recordset
이미 데이터를 가져온 경우 다음에서 count 기능을 사용할 수 있습니다. 결과 배열:
$stmt = $db->prepare('SELECT * FROM table'); $stmt->execute(); $rowCount = count($stmt->fetchAll(PDO::FETCH_ASSOC));
또는 객체 지향을 사용할 수도 있습니다. 수동으로 행을 탐색하고 계산합니다.
$rowCount = 0; while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { $rowCount++; }
모든 행을 메모리로 가져오는 것은 특히 큰 결과 집합의 경우 애플리케이션 성능에 영향을 미칠 수 있다는 점을 기억하세요. 필요에 따라 페이지 매김 또는 기타 최적화 기술을 고려하십시오.
위 내용은 PHP의 PDO SELECT 문의 행 수를 효율적으로 계산하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!