• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

count 쿼리의 성능 관련 질문

24.05.02 01:34 작성 조회수 50

0

페이징 부분에서 참고 부분에서

 

실무에서 페이징 쿼리를 작성시 데이터를 조회하는 쿼리는 여러 테이블을 조인해야 하지만 count 쿼리는 조인이 필요없는 경우도 있다 .

 

대한 구체적인 실무, 혹은 실제 예를 알고싶습니다,

답변 1

답변을 작성해보세요.

0

David님의 프로필

David

2024.05.02

안녕하세요. dionisos198님, 공식 서포터즈 David입니다.

하나의 테이블에 대해 left join이 걸리는 경우에 카운트 쿼리는 조인없이 수행해도 됩니다.

left join의 특성상 기준이 되는 테이블의 데이터에 추가로 컬럼이 붙기 때문입니다.

주의할 점은 left join되는 테이블에 중복되는 데이터로 인해 데이터가 뻥튀기 되는 경우가 있습니다. 그러면 데이터 개수가 달라질 수 있습니다. (참고)

select * from order o left join payment p on p.orderId = o.id;

select count(*) from order;

감사합니다.