할인 쿠폰 정보를 저장하는 테이블은 마케팅 캠페인, 고객 유치 및 유지, 판매 촉진 등을 위해 사용됩니다. 이 테이블은 쿠폰 ID, 코드, 할인율 또는 할인액, 시작일, 종료일, 사용 조건 등의 정보를 포함할 수 있습니다. 다음은 할인 쿠폰 정보를 저장하기 위한 테이블 생성을 위한 SQL 쿼리문 예제와 각각의 설명입니다.
1. 기본 쿠폰 테이블 생성
CREATE TABLE coupons (
coupon_id INT AUTO_INCREMENT PRIMARY KEY,
code VARCHAR(50),
discount_type VARCHAR(50),
discount_amount DECIMAL(10, 2),
start_date DATE,
end_date DATE,
min_purchase DECIMAL(10, 2),
max_discount DECIMAL(10, 2),
usage_limit INT
);
설명: 쿠폰의 코드, 할인 유형(률 또는 액), 할인액, 사용 가능 기간, 최소 구매 금액, 최대 할인액, 사용 제한 횟수 등을 저장합니다.
2. 쿠폰 사용 기록 테이블 생성
CREATE TABLE coupon_uses (
use_id INT AUTO_INCREMENT PRIMARY KEY,
coupon_id INT,
user_id INT,
use_date DATE,
order_id INT,
FOREIGN KEY (coupon_id) REFERENCES coupons(coupon_id),
FOREIGN KEY (user_id) REFERENCES users(user_id),
FOREIGN KEY (order_id) REFERENCES orders(order_id)
);
설명: 쿠폰이 사용된 날짜, 사용자, 주문과 관련된 기록을 저장합니다.
3. 쿠폰 제한 조건 테이블 생성
CREATE TABLE coupon_restrictions (
restriction_id INT AUTO_INCREMENT PRIMARY KEY,
coupon_id INT,
restriction_type VARCHAR(50),
restriction_detail TEXT,
FOREIGN KEY (coupon_id) REFERENCES coupons(coupon_id)
);
설명: 쿠폰의 사용에 대한 제한 조건(예: 특정 상품에만 사용 가능)과 상세 내용을 저장합니다.
4. 쿠폰 카테고리 할인 테이블 생성
CREATE TABLE category_discounts (
discount_id INT AUTO_INCREMENT PRIMARY KEY,
coupon_id INT,
category_id INT,
discount_rate DECIMAL(3, 2),
FOREIGN KEY (coupon_id) REFERENCES coupons(coupon_id),
FOREIGN KEY (category_id) REFERENCES categories(category_id)
);
설명: 쿠폰이 적용되는 특정 카테고리와 할인율을 저장합니다.
5. 쿠폰 발행 기록 테이블 생성
CREATE TABLE coupon_issues (
issue_id INT AUTO_INCREMENT PRIMARY KEY,
coupon_id INT,
issue_date DATE,
issued_by INT,
FOREIGN KEY (coupon_id) REFERENCES coupons(coupon_id),
FOREIGN KEY (issued_by) REFERENCES employees(employee_id)
);
설명: 쿠폰의 발행 날짜와 발행자를 기록합니다.
6. 쿠폰 만료 알림 테이블 생성
CREATE TABLE coupon_expirations (
expiration_id INT AUTO_INCREMENT PRIMARY KEY,
coupon_id INT,
notification_date DATE,
FOREIGN KEY (coupon_id) REFERENCES coupons(coupon_id)
);
설명: 쿠폰 만료에 대한 알림 날짜를 저장합니다.
7. 쿠폰 태그 테이블 생성
CREATE TABLE coupon_tags (
tag_id INT AUTO_INCREMENT PRIMARY KEY,
coupon_id INT,
tag_name VARCHAR(50),
FOREIGN KEY (coupon_id) REFERENCES coupons(coupon_id)
);
설명: 쿠폰에 할당된 태그를 저장합니다.
8. 쿠폰 통계 테이블 생성
CREATE TABLE coupon_statistics (
statistic_id INT AUTO_INCREMENT PRIMARY KEY,
coupon_id INT,
times_used INT,
total_discount_given DECIMAL(10, 2),
FOREIGN KEY (coupon_id) REFERENCES coupons(coupon_id)
);
설명: 쿠폰 사용 횟수, 제공된 총 할인액 등의 통계를 저장합니다.
9. 쿠폰 발행 대상자 테이블 생성
CREATE TABLE coupon_targets (
target_id INT AUTO_INCREMENT PRIMARY KEY,
coupon_id INT,
user_id INT,
FOREIGN KEY (coupon_id) REFERENCES coupons(coupon_id),
FOREIGN KEY (user_id) REFERENCES users(user_id)
);
설명: 쿠폰을 받을 대상 사용자를 저장합니다.
10. 쿠폰 코드 발생기 테이블 생성
CREATE TABLE coupon_generators (
generator_id INT AUTO_INCREMENT PRIMARY KEY,
coupon_id INT,
generated_code VARCHAR(50),
generation_date DATE,
FOREIGN KEY (coupon_id) REFERENCES coupons(coupon_id)
);
설명: 쿠폰 코드 생성 날짜와 생성된 코드를 기록합니다.
관련 전문용어 설명
CREATE TABLE: 새로운 테이블을 생성하는 SQL 명령어입니다.
INT, VARCHAR, DECIMAL, DATE, TEXT: 데이터 유형을 나타냅니다.
AUTO_INCREMENT: 자동으로 숫자를 증가시키는 속성입니다.
PRIMARY KEY: 각 행을 고유하게 식별하는 주 키입니다.
FOREIGN KEY: 다른 테이블의 주 키를 참조하는 외래 키입니다.
'SQL' 카테고리의 다른 글
영화 상영 일정 테이블 생성: 영화 상영 일정 정보를 저장하기 위한 테이블을 생성합니다. (0) | 2024.01.01 |
---|---|
포럼 게시글 테이블 생성: 포럼 게시글 정보를 저장하기 위한 테이블을 생성합니다. (0) | 2024.01.01 |
도서 대출 테이블 생성: 도서 대출 정보를 저장하기 위한 테이블을 생성합니다. (0) | 2024.01.01 |
학생 성적 테이블 생성: 학생 성적 정보를 저장하기 위한 테이블을 생성합니다. (0) | 2024.01.01 |
고객 지원 티켓 테이블 생성: 고객 지원 티켓 정보를 저장하기 위한 테이블을 생성합니다. (1) | 2024.01.01 |