본문 바로가기

전체 글90

DAY.10 p.3421:1 관계 (일대일) 테이블 1 or 2개 1:N 관계 (일대다) 테이블 2개 학생 - 학과 1 - 1 N - 1 N:M 관계 (다대다) 테이블 3개 사람 - 취미 1 - N N - 1 고객-도서의 상황이었을 때, 1:1 한 고객은 하나의 책만 살 수 있고, 다른 고객이 산 책은 살 수 없다. 1:N 한 고객은 여러권의 책을 살 수 있지만 다른 고객이 산 책은 살 수 없다. N:M 한 고객은 여러권의 책을 살 수 있고 다른 고객이 산 책도 살 수 있다. 마당서점 ERD 마당대학 ERD (일부) 연습문제 07 2025. 4. 25.
DAY.09 렌더링 (A:HTML코드 생성) (B:객체 생성해서 화면에 표시) SSR (Server Side Rendering) - HTML코드 생성을 백엔드 처리, B는 브라우저 CSR (Client Side Rendering) - HTML코드 생성을 브라우저의 JS 처리, B는 브라우저 데이터 가공은 프론트엔드, 백엔드 DB에서 처리할 수 있다. 가능한 프론트엔드에서 처리할 수 있으면 처리하는데 백엔드에서 처리하는 것이 효율적이면 백엔드에서도 가능하다. 하지만 가능한 DB는 안 할 수 있으면 안 하는 방향으로 처리하는 것이 좋다. DB는 괴롭히지 않는다.-- 02-(11) 고객의 이름과 고객이 구매한 도서 목록 SELECT C.name, B.bookname FROM orders O INNER.. 2025. 4. 24.
DAY.08 -- 01-(7) 박지성이 구매하지 않은 도서의 이름SELECT DISTINCT booknameFROM book BLEFT JOIN orders OON B.bookid = O.bookidLEFT JOIN customer CON O.custid = C.custidAND C.`name` = '박지성'WHERE c.custid IS NULL;SELECT *FROM book BLEFT JOIN orders OON O.bookid = B.bookidLEFT JOIN customer CON C.custid = O.custidAND C.`name` = '박지성'WHERE C.custid IS NULL;SELECT booknameFROM bookWHERE bookid NOT IN ( SELECT O.bookid FRO.. 2025. 4. 23.
DAY.07 /* p.190 INSERT질의 3-44. book 테이블에 새로운 도서 '스포츠 의학'을 삽입하시오. 스포츠 의학은한솔의학서적에서 출간했으며 가격은 90,000원입니다.*/INSERT INTO book( bookid, bookname, publisher, price )VALUES ( 11, '스포츠 의학', '한솔의학서적', 90000 );INSERT INTO book SET bookid = 12 , bookname = '스포츠 의학' , publisher = '한솔의학서적' , price = 90000; /* 질의 3-45. book 테이블에 새로운 도서 '스포츠 의학'을 삽입하시오. 스포츠 의학은한솔의학서적에서 출간했으며 가격은 미정입니다. */ INSER.. 2025. 4. 22.
DAY.06 -- 질의 3-33. 주문이 있는 고객의 이름과 주소를 나타내시오. -- 주문 정보는 orders 테이블에 존재-- 고객 정보는 customer 테이블에 존재SELECT *FROM orders;SELECT NAME, address FROM customer WHERE custid IN ( SELECT custid FROM orders ); SELECT DISTINCT C.name, C.address FROM customer C JOIN orders O ON O.custid = C.custid; SELECT C.name, C.address FROM customer C JOIN orders O ON O.custid = C.custid GROUP BY C.name, C.address;.. 2025. 4. 21.
DAY.05 -- 질의 3-29. 도서를 구매한 적이 있는 고객의 이름을 검색하시오.-- (1) 주문한 고객 id를 구한다. SELECT custid FROM orders;-- (2) 주문한 고객 id를 customer 테이블의 where절에 사용한다. SELECT NAME FROM customer WHERE custid IN ( SELECT custid FROM orders );SELECT DISTINCT C.name FROM customer C LEFT JOIN orders O ON O.custid = C.custid WHERE O.orderid IS NOT NULL;SELECT DISTINCT C.name FROM customer C INNER JOIN orders O ON O.custid =.. 2025. 4. 18.