Skip to Content
Go Back
안형우

안녕하세요. 14년차 풀스택 웹개발자 안형우입니다. 이 블로그에서는 WordPress, PHP, CSS, 사용성, 리눅스 서버 등 풀스택 웹개발에서 마주하는 다양한 문제 상황과 해결책, 필요한 개념들을 다룹니다. 👉 소개


작업물

📌 워드프레스, 답답한 빌더와 플러그인 대신 시원하게 커스터마징하기(강의) 2023-01-15
📌 아무도 말하지 않는 PHP의 좋은 점 2018-10-13
📌 유지보수하기 쉬운 CSS 전략(슬라이드) 2016-12-20
📌 워드프레스 테마에서 템플릿 파일 매칭 순서 2013-05-12

MySQL, 페이징할 때 테이블 긁는 쿼리 하나로 전체 개수까지 받아 오기(SQL_CALC_FOUND_ROWS)

아래처럼 하면 된다.

SELECT SQL_CALC_FOUND_ROWS * FROM article ORDER BY id DESC LIMIT 0, 10;
SELECT FOUND_ROWS();

위의 것은 내용을 가져 오는 쿼리고, 아래 것은 LIMIT 없이 실행했을 경우의 전체 개수를 받는 쿼리다.

보면 알겠지만 SELECT하는 필드 앞에 SQL_CALC_FOUND_ROWS라는 키워드를 적어 준 게 핵심이다. 그렇게 하면 MySQL이 전체 개수를 기억해 뒀다가 SELECT FOUND_ROWS()를 실행하면 방금 찾은 게 몇 개였는지 알려 주는 것이다.

안녕하세요. 14년차 풀스택 웹개발자 안형우입니다. 이 블로그에서는 WordPress, PHP, CSS, 사용성, 리눅스 서버 등 풀스택 웹개발에서 마주하는 다양한 문제 상황과 해결책, 필요한 개념들을 다룹니다. 👉 소개


작업물

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다