
mysqli_result::$num_rows는 데이터베이스에서 레코드를 모두 읽은 후에만 레코드의 수를 가져올 수 있습니다.
이 문제를 해결하기 위해, MySQL의 LIMIT와 OFFSET 기능을 사용하여 레코드의 수를 가져올 수 있습니다.
예를 들어, 데이터베이스에서 레코드의 수를 가져올 때, LIMIT 0, 1을 사용하여 레코드의 첫 번째 레코드만 읽고, 레코드의 수를 가져올 수 있습니다.
또한, MySQL의 SQL_CALC_FOUND_ROWS와 FOUND_ROWS() 함수를 사용하여 레코드의 수를 가져올 수 있습니다.
예를 들어, 데이터베이스에서 레코드의 수를 가져올 때, SQL_CALC_FOUND_ROWS SELECT * FROM 테이블명 LIMIT 0, 1을 사용하여 레코드의 첫 번째 레코드만 읽고, FOUND_ROWS() 함수를 사용하여 레코드의 수를 가져올 수 있습니다.
이러한 방법을 사용하여 레코드의 수를 가져올 때, 데이터베이스에서 레코드를 읽지 않고도 레코드의 수를 가져올 수 있습니다.
예제:
#hostingforum.kr
php
$query = "SELECT SQL_CALC_FOUND_ROWS * FROM 테이블명 LIMIT 0, 1";
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_array($result);
$num_rows = mysqli_query($conn, "SELECT FOUND_ROWS()");
$num_rows = mysqli_fetch_array($num_rows);
echo $num_rows[0];
이러한 방법을 사용하여 레코드의 수를 가져올 때, 데이터베이스에서 레코드를 읽지 않고도 레코드의 수를 가져올 수 있습니다.
2025-07-24 16:37