Oracle 예제4.
2021. 9. 14. 10:39ㆍOracle
CREATE TABLE 주문테이블 (
주문번호 VARCHAR2(16)
CONSTRAINT onum_pk PRIMARY KEY,
고객번호 VARCHAR2(16) NOT NULL,
주문일 DATE NOT NULL,
주문가격 NUMBER(15,2) NOT NULL,
배송도시 VARCHAR2(256),
배송완료일 DATE,
결제금액 NUMBER(15,2),
할인금액 NUMBER(15,2) NOT NULL,
적립포인트 NUMBER(15,2) NOT NULL
);
문 2) 위 생성된 테이블에서 배송도시 컬럼의 이름을 배송도시코드 로 변경하세요. (alter 쿼리문 작성)
ALTER TABLE 주문테이블 RENAME COLUMN 배송도시 TO 배송도시코드;
문 3) 위 테이블에서 배송도시코드 컬럼의 데이터 타입을 소수점 없는 8 자리 숫자 타입으로 변경 하세요. (alter 쿼리문 작성)
ALTER TABLE 주문테이블 MODIFY (배송도시코드 NUMBER(8,0));
문 4) 위 테이블에서 적립포인트 컬럼의 not null 제약 조건을 삭제 하세요. (쿼리문 작성)
ALTER TABLE 주문테이블 MODIFY 적립포인트 NUMBER(15,2) NULL;
문 5) 위 생성된 데이블에 아래 레코드를 추가하세요. (쿼리문 작성)
추가 설명, 주문번호는 영문 대문자 O 로 시작됨, 고객번호는 영문 대문자 C 로 시작됨.
INSERT INTO 주문테이블 (주문번호,고객번호,주문일,주문가격,배송도시코드,배송완료일,결제금액,할인금액,적립포인트)
VALUES('O123456','C007',TO_DATE('19/07/13','YY-MM-DD'),15000,45111,NULL,14000,1000,140);
INSERT INTO 주문테이블 (주문번호,고객번호,주문일,주문가격,배송도시코드,배송완료일,결제금액,할인금액,적립포인트)
VALUES('O54321','C008',TO_DATE('19/07/13','YY-MM-DD'),5000,54321,NULL,5000,0,0);
SELECT * FROM 주문테이블;
문 7) 위 테이블에서 주문번호가 O54321 인 고객의 적립포인트를 50 으로 수정하세요. (쿼리문 작성)
UPDATE 주문테이블 SET 적립포인트 = 적립포인트+50
WHERE 주문번호 = 'O54321';
문 8) 위 테이블에서 고객번호, 주문가격, 결재금액 만 표시되는 뷰를 생성하세요. (쿼리문 작성)
SELECT 고객번호, 주문가격, 결제금액 FROM 주문테이블;
문 9) hr 계정을 사용하여, 사원별 last_name, department_name 을 출력. (쿼리문 작성, 단, 부서가 없는 grant 도 출력, 결과 107 명)
SELECT E.LAST_NAME, D.DEPARTMENT_NAME
FROM employees E, DEPARTMENTS D
WHERE E.DEPARTMENT_ID = D.DEPARTMENT_ID(+);
문 10) hr 계정을 사용하여, 사원별 last_name, department_name, city 를 출력하세요. (쿼리문 작성, 결과 106 명)
SELECT E.LAST_NAME, D.DEPARTMENT_NAME ,L.CITY
FROM employees E, DEPARTMENTS D, LOCATIONS L
WHERE E.DEPARTMENT_ID = D.DEPARTMENT_ID
AND D.LOCATION_ID = L.LOCATION_ID;
'Oracle' 카테고리의 다른 글
Oracle 보충 2일차 (0) | 2021.10.22 |
---|---|
Oracle 보충 1일차 (0) | 2021.10.22 |
Oracle 5일차. (0) | 2021.09.13 |
Oracle 4일차. (0) | 2021.09.10 |
Oracle 예제3. (0) | 2021.09.09 |