테이블에 약 50만 건 데이터가 있는데 조회 쿼리가 5초 이상 걸립니다. ```sql SELECT * FROM orders WHERE status = 'pending' AND created_at > '2018-01-01' ORDER BY created_at DESC LIMIT 20; ``` EXPLAIN을 돌려보면 type이 ALL로 나옵니다. 인덱스를 어떻게 걸어야 하나요?
댓글 4
```sql
ALTER TABLE orders ADD INDEX idx_status_created (status, created_at);
```
WHERE 조건에 자주 쓰이는 컬럼 순서대로 복합 인덱스를 걸면 됩니다. status가 카디널리티가 낮으니 앞에, created_at이 범위 조건이니 뒤에 놓는 게 좋습니다.