도서 검색 챌린지

MySQLBeginner
지금 연습하기

소개

한 지역 서점에서 재고 관리 시스템을 개선하려고 합니다. 여러분은 데이터베이스 관리자로서 MySQL 쿼리를 사용하여 서점이 필요로 하는 특정 도서들을 찾아야 합니다. 이번 챌린지에서는 MySQL 데이터베이스에서 데이터를 필터링하고 정렬하는 능력을 테스트합니다.

이 콘텐츠는 챌린지입니다. 가이드가 제공되는 실습 (Lab) 과 달리, 학습 단계를 따라가는 것이 아니라 스스로 과제를 해결해야 합니다. 챌린지는 보통 난이도가 조금 있는 편입니다. 해결이 어렵다면 Labby 와 상담하거나 모범 답안을 확인해 보세요. 통계에 따르면 이 챌린지는 초급 수준이며, 통과율은 93%입니다. 학습자들로부터 95%의 긍정적인 평가를 받았습니다.

기술 서적 찾기

서점에서는 최근 2 년 (2022 년~2023 년) 동안 출판된 모든 기술 서적을 파악하고, 이를 가장 비싼 가격부터 저렴한 가격 순으로 정렬하려고 합니다. 이 정보는 기술 서적 섹션의 가격 책정 결정을 내리는 데 도움이 될 것입니다.

과제

  • root 사용자로 MySQL 에 접속합니다.
  • bookstore 데이터베이스를 사용합니다.
  • 다음 조건에 맞는 쿼리를 작성합니다:
    • 2022 년부터 2023 년 사이에 출판된 모든 기술 서적을 찾습니다.
    • 가격을 기준으로 내림차순 정렬합니다.
    • 제목 (title), 가격 (price), 출판 연도 (publication_year) 열만 표시합니다.
  • 결과물을 ~/project 디렉토리에 technical_books.txt라는 파일 이름으로 저장합니다.

요구 사항

  • 모든 작업은 ~/project 디렉토리에서 수행해야 합니다.
  • 쿼리는 WHERE 절을 사용하여 장르와 출판 연도를 필터링해야 합니다.
  • 결과는 가격 기준 내림차순으로 정렬되어야 합니다.
  • 2022 년과 2023 년에 출판된 도서만 포함되어야 합니다.
  • 출력 결과는 반드시 지정된 순서대로 title, price, publication_year 열을 포함해야 합니다.
  • 출력 결과는 ~/project 디렉토리의 technical_books.txt 파일에 저장되어야 합니다.

예시

올바른 쿼리를 작성한 후의 결과는 다음과 유사해야 합니다:

cat ~/project/technical_books.txt
+----------------------+-------+------------------+
| title                | price | publication_year |
+----------------------+-------+------------------+
| Data Design Patterns | 39.99 |             2022 |
| SQL for Beginners    | 34.99 |             2023 |
+----------------------+-------+------------------+
✨ 솔루션 확인 및 연습

요약

이번 챌린지에서는 여러 SQL 개념을 결합하는 연습을 했습니다. 여러 조건을 기반으로 데이터를 필터링하는 WHERE 절과 결과를 정렬하는 ORDER BY 절을 사용해 보았습니다. 이러한 기본적인 SQL 기술은 실제 데이터베이스 애플리케이션에서 데이터를 분석하고 보고서를 생성하는 데 필수적입니다. 데이터를 효과적으로 필터링하고 정렬하는 능력은 방대한 데이터셋에서 필요한 정보를 정확하게 추출할 수 있게 해줍니다.