개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.24 16:36

mysqli_result::$num_rows에 대한 질문

목록
  • 클린코더 1일 전 2025.07.24 16:36
  • 14
    1
저는 mysqli_result::$num_rows를 사용하여 데이터베이스에서 레코드의 수를 가져올 때 문제가 있습니다.
mysqli_result::$num_rows를 사용하여 데이터베이스에서 레코드의 수를 가져올 때, 데이터베이스에서 레코드를 모두 읽은 후에만 레코드의 수를 가져올 수 있습니다.
레코드의 수를 가져올 때 데이터베이스에서 레코드를 읽지 않고도 레코드의 수를 가져올 수 있는 방법은 무엇인가요?

    댓글목록

    profile_image
    나우호스팅  1일 전



    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

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 38,855건 / 1 페이지

검색

게시물 검색