쇼핑몰 데이터베이스를 검색하는 SQL문 작성하기

테이블명: PRODUCT
칼럼 자료형
순번 칼럼명 자료형 설명
1 IDX NUMBER 순서
2 PRODUCT_NAME VARCHAR2(40) 상품명
3 PRODUCT_PRICE NUMBER 판매 가격
4 PRODUCT_TYPE VARCHAR2(10) 상품 분류
5 PRODUCT_COUNT NUMBER 재고 수량
저장된 자료
위의 그림과 같이 PRODUCT 테이블에 자료가 저장되어 있습니다.
아래 조건에 맞는 자료를 검색하는 SQL문을 작성하시오.

자료 검색하기 ①

테이블의 모든 자료에 대한 모든 칼럼을 검색하시오.
SELECT * FROM PRODUCT;

자료 검색하기 ②

상품 분류가 '셔츠' 인 상품의 '상품명' 칼럼을 검색하시오.

※ SQL의 연산자
같다 =
같지 않다 !=
SELECT PRODUCT_NAME FROM PRODUCT WHERE PRODUCT_TYPE = '셔츠';

자료 검색하기 ③

재고 수량이 100개 미만인 상품에 대해 모든 칼럼의 자료를 검색하시오.

※ SQL의 연산자
이상 >=
이하 <=
초과 >
미만 <
SELECT * FROM PRODUCT WHERE PRODUCT_COUNT < 100;

자료 검색하기 ④

재고 수량이 200개 초과인 상품에 대해 모든 칼럼의 자료를 검색해서
재고 수량 기준으로 오름차순으로 정렬하시오.
SELECT * FROM PRODUCT WHERE PRODUCT_COUNT > 200 ORDER BY PRODUCT_COUNT;

자료 검색하기 ⑤

재고 수량이 100 ~ 200 인 상품에 대해 모든 칼럼의 자료를 검색해서
재고 수량 기준으로 내림차순으로 정렬하시오.

※ SQL의 연산자
BETWEEN A AND B
A 와 B 사이의 값
SELECT * FROM PRODUCT WHERE PRODUCT_COUNT BETWEEN 100 AND 200 ORDER BY PRODUCT_COUNT DESC;

기본키와 외래키

테이블 PRODUCT 의 칼럼 정보
순번 칼럼명 자료형 설명 키 정보
1 PRODUCT_IDX NUMBER 순서 기본키
2 PRODUCT_NAME VARCHAR2(40) 곡 제목
3 COMPANY_IDX NUMBER 회사 외래키
테이블 COMPANY 의 칼럼 정보
순번 칼럼명 자료형 설명 키 정보
1 COMPANY_IDX NUMBER 순번 기본키
2 COMPANY_NAME VARCHAR2(40) 회사 이름
3 COMPANY_EMAIL VARCHAR2(40) 회사 이메일
PRODUCT 테이블과 COMPANY 테이블의 관계모형
위의 그림과 같이 PRODUCT 테이블과 COMPANY 테이블이 있습니다.
PRODUCT_IDX 칼럼과 COMPANY_IDX 칼럼은 각 테이블에서 기본키 칼럼이고,
COMPANY 테이블의 COMPANY_IDX 는 PRODUCT 테이블에서 참조하는 외래키 칼럼입니다.
아래 조건에 맞는 테이블을 생성하는 SQL문을 작성하시오.

테이블 생성하기

PRODUCT 테이블과 COMPANY 테이블의 관계모형을 참고하여
기본키와 외래키를 갖는 테이블 2개를 생성하는 SQL문을 작성하시오.
PRODUCT 테이블의 COMPANY_IDX 칼럼은
CASCADE 를 사용하여
COMPANY 테이블의 자료가 삭제되면
자동으로 PRODUCT 테이블의 자료도 삭제되는 옵션을 적용하시오.
-- COMPANY 테이블 생성 CREATE TABLE COMPANY ( PRODUCT_IDX NUMBER PRIMARY KEY, PRODUCT_NAME VARCHAR2(40), COMPANY_IDX NUMBER ); -- PRODUCT 테이블 생성 CREATE TABLE PRODUCT ( COMPANY_IDX NUMBER PRIMARY KEY, COMPANY_NAME VARCHAR2(40), COMPANY_EMAIL VARCHAR2(40), CONSTRAINT FK_COMPANY FOREIGN KEY (COMPANY_IDX) REFERENCES COMPANY (COMPANY_IDX) ON DELETE CASCADE );