큐브리드(CUBRID)에서 쿼리 실행 계획(쿼리 플랜)의 비용(cost) 은 DB 엔진이 해당 쿼리를 처리하는 데 예상되는 리소스 사용량(디스크 I/O, CPU 사용량, 네트워크 등)을 추정한 값입니다.
이 비용 수치가 낮을수록 더 효율적인 쿼리입니다.
다음은 큐브리드에서 쿼리 비용을 낮추는 주요 방법들입니다:
CREATE INDEX idx_table_a ON my_table(a);
WHERE a BETWEEN '20240501' AND '20240531'
인덱스를 사용하면 비용이 크게 줄어들며, INDEX SCAN 이 쿼리 플랜에 나타나야 좋습니다.
WHERE TO_CHAR(date_column, 'YYYYMMDD') = '20240601' -- ❌
UPDATE STATISTICS ON my_table;
주기적으로 수행하세요, 특히 데이터 양이 변했을 경우.
SELECT name, age FROM my_table WHERE ...
WITH recent_data AS (
SELECT * FROM table WHERE a > '20240501'
)
SELECT * FROM recent_data WHERE ...
EXPLAIN SELECT * FROM my_table WHERE a >= '20240501';
| 항목 | 내용 |
| ✅ 인덱스 사용 | 조건 컬럼에 적절한 인덱스 생성 |
| ✅ 통계 최신화 | UPDATE STATISTICS 주기적 실행 |
| ✅ 함수 피하기 | WHERE 절에서 컬럼에 함수 쓰지 않기 |
| ✅ 필요한 컬럼만 | SELECT * 대신 필요한 컬럼만 |
| ✅ JOIN 최적화 | 조인 순서/조건 간소화 |
| ✅ EXPLAIN 사용 | 실제 비용 수치 확인 후 조정 |
| sql 쿼리에서 순위 dense_rank() 함수 사용하는 방법은? (0) | 2025.07.19 |
|---|---|
| SQL 쿼리 날짜 차이 구하기 datediff 사용하는 방법 (0) | 2025.07.14 |
| sqlite 에서 rank 함수같은 역할은? 요일별로 상위 3개 조회하기 (0) | 2025.06.24 |
| 데이터베이스 /*+ordered use_nl */ 힌트를 쓰면 무조건 성능이 좋은걸까? (0) | 2025.06.23 |
| 데이터베이스 함수에서 cast() 함수 역할은? (0) | 2025.06.18 |