-> Filter: (orders_big.customer_id = 77777)
(cost=50346 rows=49825)
(actual time=19..122 rows=5 loops=1)
-> Table scan on orders_big
(cost=50346 rows=498248)
(actual time=0.135..108 rows=500000 loops=1)
Table scan on orders_big
(cost=50346 rows=498248)
(actual time=0.135..108 rows=500000 loops=1)
| 항목 | 의미 |
|---|---|
| Table scan | 인덱스 안 쓰고 테이블 전부 읽음 |
| rows=498248 | 옵티마이저 예상: 약 49만 건 |
| actual rows=500000 | 실제로 50만 건 전부 읽음 |
| actual time=0.135..108 | 0.135ms에 시작해서 108ms 동안 스캔 |
👉 완전한 풀 테이블 스캔
customer_id에 인덱스 없음 또는그래서 옵티마이저가 이렇게 생각함:
“어차피 거의 다 읽을 거면
인덱스 타고 왔다 갔다 하지 말고
그냥 한 번에 다 읽자”
-> Filter: (orders_big.customer_id = 77777)
(cost=50346 rows=49825)
(actual time=19..122 rows=5 loops=1)
| 항목 | 의미 |
|---|---|
| Filter | 읽은 행 중 조건으로 거름 |
| rows=49825 | 옵티마이저 예상: 49,825건 |
| actual rows=5 | 실제 결과: 5건 |
| actual time=19..122 | 필터링 시작~종료 시간 |