sql count와 별도로 저장하는거 속도차이가 어떨까요?

sql count와 별도로 저장하는거 속도차이가 어떨까요?

QA

sql count와 별도로 저장하는거 속도차이가 어떨까요?

답변 3

본문

sql에서 count로 db량을 측정하는것과 별도 테이블을 만들어서 읽은것 속도차이가 많이 날까요?

 

예를 들자면, count(mb_id)처럼 게시판에 글쓰기를 한 회원수와 별도 테이블에 회원이 게시판글쓰기할때마다 write+1 로 등록후에 조회하는것과 차이가 어느정도 나타나는지와 장단점을 알고 싶습니다.

 

고수님들의 고견 부탁드립니다~

이 질문에 댓글 쓰기 :

답변 3

phpmyadmin 에서 query 를 실행해보시면 응답 속도가 있습니다.

전체 count()*) 는 실제로 별다른 부하가 없이 불러옵니다.

굳이 별도 테이블을 만들 필요는 없을것 같네요.

단, 조건이 붙는다면, 그 부분은 해당 필드를 index 걸로 테스트해보고 

응답속도가 느리다면 별도 테이블에 저장하는걸 권합니다.

 

키값관리를 위한것이라면

 

mysql 에서 컬럼에 auto_increment를 적용하는게 나을것이고

postgresql 이나 oracle에서는 sequence로 등록후 nextval 값을 관리하는게 효과적입니다.

 

단지 현재의 갯수를 구하는것은 count(컬럼) 하는건 컬럼에 index만 걸려있거나 * 로 전체카운트라면

속도저하가 거의 없을겁니다.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 30
© SIRSOFT
현재 페이지 제일 처음으로