데이터베이스-오라클 복습(1). 22.11.22.화

류소리·2022년 11월 22일
0

오라클

목록 보기
10/13
-- (1) 도서번호가 1인 도서의 이름은?

SELECT BOOKNAME     
FROM BOOK
WHERE BOOKID = 1;

-- (2) 박지성의 책값의 합은?
SELECT SUM(SALEPRICE)        
FROM ORDERS
WHERE CUSTID =1;

-- (3) 박지성이 구매한 출판사 수 (book,orderes join하기)
SELECT COUNT(PUBLISHER)
FROM BOOK JOIN ORDERS USING (BOOKID)
WHERE CUSTID = 1; 

-- (4) 박지성이 구매한 도서의 가격,정가와 판매가의 차이
SELECT SALEPRICE, (PRICE - SALEPRICE)
FROM BOOK JOIN ORDERS USING (BOOKID)
WHERE CUSTID = 1; 

-- (5) 박지성이 구매한 책의 이름. 출판사 가격(price)
SELECT BOOKNAME, PUBLISHER, PRICE
FROM BOOK JOIN ORDERS USING (BOOKID)
WHERE CUSTID = 1; 

-- (6) 박지성이 구매하지 않은 책의 이름. 출판사 가격(price)
SELECT BOOKNAME, PUBLISHER, PRICE
FROM BOOK JOIN ORDERS USING (BOOKID)
WHERE CUSTID <> 1; 

-- (7) 마당 서점에 있는 출판사들의 총 개수 
SELECT COUNT(DISTINCT PUBLISHER)
FROM BOOK; 

-- (8) 성이 김씨인 고객의 이름과 주소 customer
SELECT NAME,ADDRESS
FROM CUSTOMER
WHERE NAME LIKE ('김%');

-- (9) 두번쨰 글자가 '연'인 고객의 이름
SELECT NAME, ADDRESS
FROM CUSTOMER
WHERE NAME LIKE '_연%'

-- (10) 2014-7/4-7/7사이 주문받은 도서의 주문번호 orders
SELECT ORDERID
FROM ORDERS
WHERE ORDERDATE BETWEEN '2014/07/04' AND '2014/07/07'; 

-- (11) 2014-7/4-7/7사이 주문받은 도서의 주문번호와 책이름
SELECT ORDERID, BOOKNAME
    FROM ORDERS JOIN BOOK USING(BOOKID)
    WHERE ORDERDATE BETWEEN '2014/07/04' AND '2014/07/07'; 

-- (12) 주문금액의 총액, 주문금액의 평균 금액 
SELECT SUM(SALEPRICE), AVG(SALEPRICE)
FROM ORDERS; 

-- (13) 고객의 이름과 고객별 구매액
SELECT NAME, SUM(SALEPRICE)
FROM CUSTOMER JOIN ORDERS USING(CUSTID)
GROUP BY NAME; 

-- (14) 고객의 이름과 고객이 구매한 도서의이름 book,orders,customer
SELECT NAME, BOOKNAME
FROM BOOK JOIN ORDERS USING (BOOKID)
        JOIN CUSTOMER USING (CUSTID)
ORDER BY NAME; 

-- (15) 도서의 판매액 평균보다 구매액 평균이 더 높은 고객의 이름
select c.name, avg(o.saleprice)
from customer c join orders o using(custid) 
group by c.name
having avg(o.saleprice) > (select avg(saleprice) from orders); 

SELECT C.NAME
FROM ORDERS O, CUSTOMER C
WHERE C.CUSTID = O.CUSTID
GROUP BY C.NAME
HAVING AVG(SALEPRICE) > (SELECT AVG(SALEPRICE)
                        FROM ORDERS); 

-- (16) 새로운 도서 스포츠세계,대한미디어,10000원이 마당서점에 입고되엇다.
INSERT INTO BOOK
    VALUES (11, '스포츠 세계', '대한미디어', 10000); 

-- (16) 새로운 손흥민 춘천 삽입.
INSERT INTO CUSTOMER
    VALUES (6, '손흥민', '춘천', NULL); 

-- (17) 출판사 ‘대한미디어’를 ‘대한출판사’로 이름을 바꾸시오.
UPDATE Book SET publisher='대한출판사' 
WHERE publisher like '대한미디어';
profile
새싹 빅테이터 개발자

0개의 댓글