MSA/SQL
DAY.03
domsam
2025. 4. 16. 18:11
반응형
마당서점 샘플데이터
Q-01. 책이름이 '축구의 역사'인 책의 출판사와 가격을 표시해 주세요.
Q-02. 이름이 '김연아'인 고객의 휴대폰번호를 표시해 주세요.
Q-03. 모든 국내 도서의 이름과 가격을 검색하시오.
Q-04. 모든 도서의 도서번호, 도서이름, 출판사, 가격을 검색하시오.
Q-05. 도서 테이블에 있는 모든 출판사를 검색하시오. (중복제거)
Q-06. 가격이 20,000원 미만인 도서를 검색하시오.
Q-07. 가격이 10,000원 이상 20,000원 이하인 도서를 검색하시오.
Q-08. 출판사가 '굿스포츠' 혹은 '대한미디어'인 도서를 검색하시오.
Q-09. '축구의 역사'를 출간한 출판사를 검색하시오.
Q-10. 도서이름에 '축구'가 포함된 책이름과 출판사를 검색하시오.
Q-11. 도서이름의 왼쪽 두 번째 위치에 '구'라는 문자열을 갖는 도서를 검색하시오.
Q-12. 도서이름에 '축구'가 들어가는 도서 중 20,000원 이상인 도서를 검색하시오.
Q-13. 도서를 도서명 기준으로 내림차순으로 정렬해 주세요.
Q-14. 도서를 가격순으로 검색하고, 가격이 같으면 이름순으로 검색하시오.
Q-15. 도서를 가격의 내림차순으로 검색하시오. 가격이 같다면 출판사를 오름차순으로 출력하시오.
Q-16. 고객이 주문한 도서의 총판매액을 구하시오.
Q-17. 2번 고객 (김연아) 고객이 주문한 도서의 총판매액을 구하시오.
/* p.135 */
-- Q-01. 책이름이 '축구의 역사'인 책의 출판사와 가격을 표시해 주세요.
SELECT publisher, price
FROM book
WHERE bookname = '축구의 역사';
-- Q-02. 이름이 '김연아'인 고객의 휴대폰번호를 표시해 주세요.
SELECT phone
FROM customer
WHERE NAME = '김연아';
-- Q-03. 모든 국내 도서의 이름과 가격을 검색하시오.
SELECT bookname, price
FROM book;
SELECT bookname, price
FROM imported_book;
SELECT bookname, price
FROM book
UNION ALL
SELECT bookname, price
FROM imported_book;
-- Q-04. 모든 도서의 도서번호, 도서이름, 출판사, 가격을 검색하시오.
SELECT *
FROM book;
SELECT bookid, bookname, publisher, price
FROM book;
-- Q-05. 도서 테이블에 있는 모든 출판사를 검색하시오. (중복제거)
SELECT DISTINCT publisher
FROM book;
-- Q-06. 가격이 20,000원 미만인 도서를 검색하시오.
SELECT *
FROM book
WHERE price < 20000;
-- Q-07. 가격이 10,000원 이상 20,000원 이하인 도서를 검색하시오.
SELECT *
FROM book
WHERE price BETWEEN 10000 AND 20000;
SELECT *
FROM book
WHERE price >= 10000 AND price <= 20000;
-- Q-08. 출판사가 '굿스포츠' 혹은 '대한미디어'인 도서를 검색하시오.
SELECT *
FROM book
WHERE publisher IN ('굿스포츠', '대한미디어');
SELECT *
FROM book
WHERE publisher = '굿스포츠'
OR publisher = '대한미디어';
-- Q-09. '축구의 역사'를 출간한 출판사를 검색하시오.
SELECT publisher
FROM book
WHERE bookname = '축구의 역사';
SELECT publisher
FROM book
WHERE bookname LIKE '축구의 역사';
-- Q-10. 도서이름에 '축구'가 포함된 책이름과 출판사를 검색하시오.
SELECT bookname, publisher
FROM book
WHERE bookname LIKE '%축구%';
-- Q-11. 도서이름의 왼쪽 두 번째 위치에 '구'라는 문자열을 갖는
-- 도서를 검색하시오.\
SELECT *
FROM book
WHERE bookname LIKE '_구%';
-- Q-12. 도서이름에 '축구'가 들어가는 도서 중 20,000원 이상인 도서를
-- 검색하시오.
SELECT *
FROM book
WHERE bookname LIKE '%축구%'
AND price >= 20000;
-- Q-13. 도서를 도서명 기준으로 내림차순으로 정렬해 주세요.
SELECT *
FROM book
ORDER BY bookname DESC;
-- Q-14. 도서를 가격순으로 검색하고, 가격이 같으면 이름순으로 검색하시오.
SELECT *
FROM book
ORDER BY price, bookname;
-- Q-15. 도서를 가격의 내림차순으로 검색하시오. 가격이 같다면 출판사를
-- 오름차순으로 출력하시오.
SELECT *
FROM book
ORDER BY price DESC, publisher ASC;
-- Q-16. 고객이 주문한 도서의 총판매액을 구하시오.
SELECT SUM(saleprice), COUNT(1)
FROM orders;
-- Q-17. 2번 고객 (김연아) 고객이 주문한 도서의 총판매액을 구하시오.
SELECT SUM(saleprice), COUNT(1)
FROM orders
WHERE custid = 2;