소개
이 프로젝트에서는 MySQL 에서 다중 행 하위 쿼리 연산을 사용하여 국가 코드 "FRO"와 동일한 공식 언어를 사용하는 국가를 검색하는 방법을 배우게 됩니다.
👀 미리보기
MariaDB [world]> SOURCE /home/labex/project/getCountryCode.sql;
+-------------+----------+
| CountryCode | Language |
+-------------+----------+
| DNK | Danish |
| FRO | Danish |
| FRO | Faroese |
| GRL | Danish |
+-------------+----------+
4 rows in set (0.002 sec)
🎯 과제
이 프로젝트에서 다음을 배우게 됩니다:
- 비밀번호 없이
sudo명령을 사용하여 MySQL 에 접근하는 방법 world.sql파일에서 MySQL 데이터베이스로 데이터를 가져오는 방법- 다중 행 하위 쿼리를 사용하여 원하는 정보를 검색하는 SQL 쿼리를 작성하는 방법
- MySQL 명령줄 인터페이스에서 SQL 쿼리를 실행하는 방법
🏆 성과
이 프로젝트를 완료하면 다음을 수행할 수 있습니다:
- SQL 에서 다중 행 하위 쿼리의 개념을 이해합니다.
- 복잡한 SQL 쿼리를 사용하여 데이터베이스에서 특정 데이터를 검색합니다.
- SQL 지식을 실제 데이터 검색 문제 해결에 적용합니다.
MySQL 접속 및 데이터 가져오기
이 단계에서는 sudo 명령을 사용하여 MySQL 에 접근하고 world.sql 데이터를 world 데이터베이스로 가져오는 방법을 배우게 됩니다.
- 터미널을 열고 다음 명령을 실행하여 MySQL 서비스를 시작합니다:
sudo service mysql start
sudo명령을 사용하여 MySQL 명령줄 인터페이스에 접근합니다:
sudo mysql
world.sql데이터를 MySQL 데이터베이스로 가져옵니다:
MariaDB [None]> SOURCE /home/labex/project/world.sql;
이렇게 하면 world.sql 파일의 데이터를 MySQL 데이터베이스로 가져옵니다.
이제 MySQL 에 성공적으로 접근하여 필요한 데이터를 가져왔습니다. 다음 단계로 넘어가겠습니다.
FRO 와 동일한 공식 언어를 사용하는 국가 검색
이 단계에서는 국가 코드 FRO를 가진 국가와 동일한 공식 언어를 사용하는 모든 국가를 검색하는 SQL 쿼리를 작성합니다.
getCountryCode.sql파일을 열고 다음 SQL 쿼리를 추가합니다:
SELECT cl1.CountryCode, cl1.Language
FROM countrylanguage AS cl1
WHERE cl1.Language IN (
-- CountryCode 가 'FRO'이고 IsOfficial = 'T'인 국가의 언어를 검색하는 하위 쿼리
SELECT cl2.Language
FROM countrylanguage AS cl2
WHERE cl2.CountryCode = 'FRO' AND cl2.IsOfficial = 'T'
)
AND cl1.CountryCode IN (
-- FRO 와 동일한 언어를 사용하고 IsOfficial = 'T'인 국가의 CountryCode 를 검색하는 하위 쿼리
SELECT cl3.CountryCode
FROM countrylanguage AS cl3
WHERE cl3.Language IN (
-- CountryCode 가 'FRO'이고 IsOfficial = 'T'인 국가의 언어를 검색하는 하위 쿼리
SELECT cl4.Language
FROM countrylanguage AS cl4
WHERE cl4.CountryCode = 'FRO' AND cl4.IsOfficial = 'T'
)
AND cl3.IsOfficial = 'T'
);
이 쿼리는 다중 행 하위 쿼리를 사용하여 국가 코드 FRO를 가진 국가와 동일한 공식 언어를 사용하는 국가를 검색합니다.
getCountryCode.sql파일을 저장합니다.
이제 원하는 정보를 검색하는 SQL 쿼리를 만들었습니다. 다음 단계에서는 MySQL 에서 쿼리를 실행합니다.
SQL 쿼리 실행
이 단계에서는 getCountryCode.sql 파일에 저장된 SQL 쿼리를 실행합니다.
getCountryCode.sql파일에 저장된 SQL 쿼리를 실행합니다:
MariaDB [world]> SOURCE /home/labex/project/getCountryCode.sql;
이렇게 하면 SQL 쿼리가 실행되고 결과가 터미널에 표시됩니다.
출력은 다음과 유사해야 합니다:
+-------------+----------+
| CountryCode | Language |
+-------------+----------+
| DNK | Danish |
| FRO | Danish |
| FRO | Faroese |
| GRL | Danish |
+-------------+----------+
4 rows in set (0.002 sec)
쿼리는 국가 코드 FRO를 가진 국가와 동일한 공식 언어를 사용하는 국가를 성공적으로 검색했습니다.
축하합니다! 다중 행 하위 쿼리 연산을 사용하여 국가 코드 범위를 쿼리하는 프로젝트를 완료했습니다.
요약
축하합니다! 이 프로젝트를 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.
