| 123456789101112131415161718192021222324252627282930313233343536373839 |
- -- DDL 002: 벤더사-인플루언서 매핑 테이블 인덱스 추가
- -- 생성일: 2025-07-22
- -- 목적: 성능 최적화를 위한 인덱스 및 제약 조건 추가
- -- 1. 기본 검색용 인덱스
- ALTER TABLE `VENDOR_INFLUENCER_MAPPING`
- ADD INDEX `idx_vendor_seq` (`VENDOR_SEQ`);
- ALTER TABLE `VENDOR_INFLUENCER_MAPPING`
- ADD INDEX `idx_influencer_seq` (`INFLUENCER_SEQ`);
- ALTER TABLE `VENDOR_INFLUENCER_MAPPING`
- ADD INDEX `idx_status` (`STATUS`);
- ALTER TABLE `VENDOR_INFLUENCER_MAPPING`
- ADD INDEX `idx_request_type` (`REQUEST_TYPE`);
- ALTER TABLE `VENDOR_INFLUENCER_MAPPING`
- ADD INDEX `idx_is_active` (`IS_ACTIVE`);
- -- 2. 날짜 관련 인덱스
- ALTER TABLE `VENDOR_INFLUENCER_MAPPING`
- ADD INDEX `idx_request_date` (`REQUEST_DATE`);
- ALTER TABLE `VENDOR_INFLUENCER_MAPPING`
- ADD INDEX `idx_expired_date` (`EXPIRED_DATE`);
- -- 3. 복합 인덱스 (성능 최적화)
- ALTER TABLE `VENDOR_INFLUENCER_MAPPING`
- ADD INDEX `idx_vendor_status_active` (`VENDOR_SEQ`, `STATUS`, `IS_ACTIVE`);
- ALTER TABLE `VENDOR_INFLUENCER_MAPPING`
- ADD INDEX `idx_influencer_status_active` (`INFLUENCER_SEQ`, `STATUS`, `IS_ACTIVE`);
- -- 4. 중복 방지를 위한 유니크 인덱스
- -- 동일한 벤더사-인플루언서 조합에서 동일한 상태의 중복 방지
- -- 다른 상태로는 여러 레코드 허용 (예: 이전 거절 후 재요청)
- ALTER TABLE `VENDOR_INFLUENCER_MAPPING`
- ADD UNIQUE INDEX `unique_vendor_influencer_status` (`VENDOR_SEQ`, `INFLUENCER_SEQ`, `STATUS`);
|