Database

11.22.(화) OracleDB(13): 실습테이블(4)

콜라든포비 2022. 11. 26. 21:13

실습테이블 데이터 추가

앞서 작성한 작가, 출판사, 책 테이블에 데이터를 추가해주자.

본인은 인터넷에서 세계에서 가장 유명한 작가를 검색해서 1~3위에 나오는 작가들과 그들의 작품들로 채웠다. 출판사 또한 마찬가지다.

작가 등록

INSERT INTO author_tbl
VALUES (auth_seq.nextval, 'Bernard Werber', '@werbernard', 'Les Fourmis', TO_DATE('1991','yyyy'), SYSDATE);
INSERT INTO author_tbl
VALUES (auth_seq.nextval, 'Haruki Murakami', 'vintageanchorpublicity@randomhouse.com', 'Hear the Wind Sing', TO_DATE('1979','yyyy'), SYSDATE);
INSERT INTO author_tbl
VALUES (auth_seq.nextval, 'Dan Brown', '@authordanbrown', 'Digital Fortress', TO_DATE('1998','yyyy'), SYSDATE);

출판사 등록

INSERT INTO pub_tbl
VALUES (pub_seq.nextval, '1-800-733-3000', 'consumerservices@penguinrandomhouse.com', 'Markus Dohle', 'Penguin Random House', SYSDATE);
INSERT INTO pub_tbl
VALUES (pub_seq.nextval, '1-800-242-7737', 'hello@harpercollins.com', 'Brian Murray', 'HarperCollins', SYSDATE);
INSERT INTO pub_tbl
VALUES (pub_seq.nextval, '1-800-223-2336', 'SSPublicity@simonandschuster.com', 'Jonathan Karp', 'Simon & Schuster', SYSDATE);

작가와 출판사를 등록할때 쓴 시퀀스는 이러하다.

CREATE SEQUENCE pub_seq
	START WITH 1
	INCREMENT BY 1;
    
CREATE SEQUENCE auth_seq
	START WITH 10
	INCREMENT BY 10;

책 등록

INSERT INTO book_tbl
VALUES (9780552141123, 'Les Fourmis', 14.14, 'novel', TO_DATE('1991/2/2', 'yyyy/mm/dd'), 306, 10, 2, SYSDATE);
INSERT INTO book_tbl
VALUES (9782286004231, 'Les Thanatonautes', 16.84, 'novel', TO_DATE('1994/1/1', 'yyyy/mm/dd'), 589, 10, 2, SYSDATE);
INSERT INTO book_tbl
VALUES (9784062035156, 'Norwegian Wood', 34.17, 'literary fiction', TO_DATE('1987/9/1', 'yyyy/mm/dd'), 494, 20, 1, SYSDATE);
INSERT INTO book_tbl
VALUES (9780099494096, 'Kafka on the Shore', 14.85, 'magical realism', TO_DATE('2002/9/12', 'yyyy/mm/dd'), 505, 20, 1, SYSDATE);
INSERT INTO book_tbl
VALUES (9780385504201, 'The Da Vinci Code', 15.47, 'detective fiction', TO_DATE('2003/4/1', 'yyyy/mm/dd'), 689, 30, 3, SYSDATE);
INSERT INTO book_tbl
VALUES (9780385537858, 'Inferno', 26.90, 'conspiracy fiction', TO_DATE('2013/5/14', 'yyyy/mm/dd'), 624, 30, 3, SYSDATE);

JOIN을 이용해서 테이블 2개 이상 조회하기

SELECT 
	b.title, b.genre, a.author, a.author_email, p.publisher, p.pub_email, b.price
FROM book_tbl b
	JOIN author_tbl a ON b.author_code=a.author_code
	JOIN pub_tbl p ON b.pub_code=p.pub_code;