SELECT bc.code, count(*)
FROM board_code as bc LEFT JOIN board as b
ON bc.code = b.code AND b.created_at like '2025-10-21%'
where bc.display = 'Y'
group by bc.code
-- board_code는 게시판 code 종류만 모아둔 테이블
(ex. NOTICE, REVIEW, QNA ..)
-- board는 게시판, 게시글마다 게시판 종류 code 존재
-- 예시 결과(10월 21일만 집계)
ㅡㅡㅡㅡㅡㅡㅡㅡㅡ
NOTICE | 12
REVIEW | 123
QNA | 43
ㅡㅡㅡㅡㅡㅡㅡㅡ
이 쿼리가 느린 이유를 설명하세요.
그리고 개선하세요.

idx_code = (code) 입니다.
(code, created_at) 인덱스가 쓰여도
created_at으로 범위를 좁히지 못하고
code = ? 조건만 활용되는 상황
'쿼리 튜닝' 카테고리의 다른 글
| 휴먼 회원 조회 문제 (0) | 2025.12.12 |
|---|---|
| distinct한 값을 빠르게 뽑기 문제 (2) | 2025.11.30 |
| OOM(Out of Memeory) 문제 (5) | 2025.10.05 |
| 2차 정렬로 인한 문제 (0) | 2025.09.27 |
| 최근 접속자 목록 조회 문제 (0) | 2025.08.20 |