설문조사 결과를 저장하는 테이블은 고객의 의견, 선호도, 피드백 등을 수집하고 분석하는 데 중요합니다. 이 정보는 제품 개선, 서비스 개선, 고객 만족도 측정 등에 활용될 수 있습니다. 다음은 고객 설문조사 결과를 저장하기 위한 테이블 생성을 위한 SQL 쿼리문 예제와 각각의 설명입니다.
1. 기본 설문조사 테이블 생성
CREATE TABLE surveys (
survey_id INT AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(200),
description TEXT,
start_date DATE,
end_date DATE
);
설명: 설문조사의 기본 정보를 저장합니다. 제목, 설명, 시작일, 종료일을 포함합니다.
2. 설문조사 질문 테이블 생성
CREATE TABLE survey_questions (
question_id INT AUTO_INCREMENT PRIMARY KEY,
survey_id INT,
question_text TEXT,
question_type VARCHAR(50),
FOREIGN KEY (survey_id) REFERENCES surveys(survey_id)
);
설명: 각 설문조사의 질문과 질문 유형을 저장합니다.
3. 설문조사 응답 테이블 생성
CREATE TABLE survey_responses (
response_id INT AUTO_INCREMENT PRIMARY KEY,
question_id INT,
user_id INT,
response TEXT,
response_date TIMESTAMP,
FOREIGN KEY (question_id) REFERENCES survey_questions(question_id),
FOREIGN KEY (user_id) REFERENCES users(user_id)
);
설명: 사용자의 각 질문에 대한 응답과 응답 날짜를 저장합니다.
4. 설문조사 응답 옵션 테이블 생성
CREATE TABLE response_options (
option_id INT AUTO_INCREMENT PRIMARY KEY,
question_id INT,
option_text TEXT,
FOREIGN KEY (question_id) REFERENCES survey_questions(question_id)
);
설명: 선택형 질문에 대한 응답 옵션을 저장합니다.
5. 설문조사 참여자 테이블 생성
CREATE TABLE survey_participants (
participant_id INT AUTO_INCREMENT PRIMARY KEY,
survey_id INT,
user_id INT,
participation_date DATE,
FOREIGN KEY (survey_id) REFERENCES surveys(survey_id),
FOREIGN KEY (user_id) REFERENCES users(user_id)
);
설명: 설문조사에 참여한 사용자와 참여 날짜를 저장합니다.
6. 설문조사 결과 요약 테이블 생성
CREATE TABLE survey_results_summary (
summary_id INT AUTO_INCREMENT PRIMARY KEY,
survey_id INT,
total_responses INT,
positive_feedback INT,
negative_feedback INT,
FOREIGN KEY (survey_id) REFERENCES surveys(survey_id)
);
설명: 설문조사의 총 응답 수, 긍정적 피드백 수, 부정적 피드백 수 등을 요약하여 저장합니다.
7. 설문조사 리마인더 테이블 생성
CREATE TABLE survey_reminders (
reminder_id INT AUTO_INCREMENT PRIMARY KEY,
survey_id INT,
user_id INT,
reminder_date TIMESTAMP,
FOREIGN KEY (survey_id) REFERENCES surveys(survey_id),
FOREIGN KEY (user_id) REFERENCES users(user_id)
);
설명: 설문조사 참여를 위한 리마인더 발송 기록을 저장합니다.
8. 설문조사 공유 테이블 생성
CREATE TABLE survey_shares (
share_id INT AUTO_INCREMENT PRIMARY KEY,
survey_id INT,
shared_by INT,
shared_to INT,
share_date TIMESTAMP,
FOREIGN KEY (survey_id) REFERENCES surveys(survey_id),
FOREIGN KEY (shared_by) REFERENCES users(user_id),
FOREIGN KEY (shared_to) REFERENCES users(user_id)
);
설명: 설문조사가 공유된 사용자와 공유 날짜를 기록합니다.
9. 설문조사 코멘트 테이블 생성
CREATE TABLE survey_comments (
comment_id INT AUTO_INCREMENT PRIMARY KEY,
survey_id INT,
user_id INT,
comment TEXT,
comment_date TIMESTAMP,
FOREIGN KEY (survey_id) REFERENCES surveys(survey_id),
FOREIGN KEY (user_id) REFERENCES users(user_id)
);
설명: 설문조사에 대한 사용자 코멘트와 코멘트 날짜를 저장합니다.
10. 설문조사 태그 테이블 생성
CREATE TABLE survey_tags (
tag_id INT AUTO_INCREMENT PRIMARY KEY,
survey_id INT,
tag_name VARCHAR(50),
FOREIGN KEY (survey_id) REFERENCES surveys(survey_id)
);
설명: 설문조사에 할당된 태그를 저장합니다.
관련 전문용어 설명
CREATE TABLE: 새로운 테이블을 생성하는 SQL 명령어입니다.
INT, VARCHAR, DATE, TIMESTAMP, TEXT: 데이터 유형을 나타냅니다.
AUTO_INCREMENT: 자동으로 숫자를 증가시키는 속성입니다.
PRIMARY KEY: 각 행을 고유하게 식별하는 주 키입니다.
FOREIGN KEY: 다른 테이블의 주 키를 참조하는 외래 키입니다.
'SQL' 카테고리의 다른 글
세금 테이블 생성: 세금 정보를 저장하기 위한 테이블을 생성합니다. (0) | 2023.12.31 |
---|---|
이미지 테이블 생성: 상품 이미지 정보를 저장하기 위한 테이블을 생성합니다. (1) | 2023.12.31 |
마케팅 테이블 생성: 마케팅 캠페인 정보를 저장하기 위한 테이블을 생성합니다. (0) | 2023.12.31 |
환불 테이블 생성: 환불 정보를 저장하기 위한 테이블을 생성합니다. (0) | 2023.12.31 |
카탈로그 테이블 생성: 상품 카탈로그 정보를 저장하기 위한 테이블을 생성합니다. (0) | 2023.12.31 |