Primary Key(PK)가 2개 이상의 컬럼으로 구성된 경우, 이를 복합 Primary Key라고 합니다.
복합 PK를 생성하면 해당 컬럼 조합에 대해 자동으로 **복합 인덱스(Composite Index)**가 생성됩니다.
이 인덱스는 두 컬럼의 조합을 기반으로 정렬되고 검색 성능을 최적화합니다.
CREATE TABLE Orders ( order_id INT, product_id INT, quantity INT, PRIMARY KEY (order_id, product_id) );
위 쿼리를 실행하면 (order_id, product_id)에 대해 복합 인덱스가 생성됩니다.
-- 선행 컬럼 사용: 인덱스 활용
SELECT *
FROM Orders
WHERE order_id = 101;
-- 선행 및 후행 컬럼 사용: 인덱스 활용
SELECT *
FROM Orders
WHERE order_id = 101 AND product_id = 202;
-- 후행 컬럼만 사용: 인덱스 비활용
SELECT *
FROM Orders
WHERE product_id = 202;
| 데이터베이스 SQL에서 다음행 찾는 LEAD( ) OVER ( ) 함수 (0) | 2024.11.23 |
|---|---|
| mysql workbench 자동 대문자 변환하는 방법 (0) | 2024.11.21 |
| pk 1개 테이블과 2개 테이블의 차이점 (0) | 2024.11.19 |
| 데이터베이스 sql 월별 평균 건수 조회 쿼리 AVG 함수 (0) | 2024.11.17 |
| 큐브리드 sql replace 공백 구분탭 추가하는 방법 CHAR(9) (1) | 2024.11.14 |