소개
이 프로젝트에서는 데이터베이스, 테이블을 생성하고 데이터를 삽입하는 방법을 배우게 됩니다. 그런 다음, 데이터베이스의 정보를 기반으로 모든 사용자의 레벨을 검색하기 위해 비등가 조인 (non-equijoin) 쿼리를 실행합니다.
👀 미리보기

🎯 과제
이 프로젝트에서 다음을 배우게 됩니다:
- 비밀번호 없이
sudo명령을 사용하여 MySQL 에 접근하는 방법 vip데이터베이스를 생성하는 방법level및user테이블을 생성하고 데이터를 삽입하는 방법- 모든 사용자의 레벨을 검색하는 SQL 쿼리를 작성하는 방법
🏆 성과
이 프로젝트를 완료하면 다음을 수행할 수 있습니다:
- 데이터베이스 및 테이블 생성 프로세스 이해
- 테이블에 데이터 삽입 경험 습득
- 여러 테이블에서 데이터를 검색하기 위해 비등가 조인 쿼리를 실행하는 방법 학습
- 실제 문제 해결을 위해 SQL 지식 적용
MySQL 접속 및 데이터베이스 생성
이 단계에서는 비밀번호 없이 sudo 명령을 사용하여 MySQL 에 접속하고 vip 데이터베이스를 생성하는 방법을 배우게 됩니다.
- MySQL 서비스 시작:
sudo service mysql start
sudo명령을 사용하여 MySQL 에 접속:
sudo mysql
- 제공된 문자 집합 (charset) 으로
vip데이터베이스 생성:
CREATE SCHEMA vip CHARSET UTF8;
vip데이터베이스 사용:
USE vip;
테이블 생성 및 데이터 삽입
이 단계에서는 level 및 user 테이블을 생성하고 데이터를 삽입하는 방법을 배우게 됩니다.
level테이블 생성:
CREATE TABLE level (
name VARCHAR(64) NOT NULL,
low INT NOT NULL,
high INT NOT NULL
);
level테이블에 데이터 삽입:
INSERT INTO level VALUES
('L1', 0, 9),
('L2', 10, 99),
('L3', 100, 499),
('L4', 500, 999);
user테이블 생성:
CREATE TABLE user (
name VARCHAR(32) NOT NULL,
score INT NOT NULL
);
user테이블에 데이터 삽입:
INSERT INTO user VALUES
('Jane', 5),
('John', 15),
('Mary', 155);
사용자 레벨 조회
이 단계에서는 vip 데이터베이스의 정보를 기반으로 모든 사용자의 레벨을 검색하는 방법을 배우게 됩니다.
다음 코드를
getLevel.sql파일에 추가합니다:SELECT u.name AS `User`, l.name AS `Level` FROM `user` u, `level` l WHERE u.score BETWEEN l.low AND l.high;파일을 저장하고 닫습니다.
MySQL 에서
getLevel.sql스크립트를 실행합니다:SOURCE /home/labex/project/getLevel.sql;
출력 결과는 다음과 같아야 합니다:
MariaDB [vip]> SOURCE /home/labex/project/getLevel.sql;
+------+-------+
| User | Level |
+------+-------+
| Jane | L1 |
| John | L2 |
| Mary | L3 |
+------+-------+
3 rows in set (0.000 sec)
축하합니다! 프로젝트를 완료했습니다.
요약
축하합니다! 이 프로젝트를 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.



