전체 방문자
오늘
어제
21종
종이의 코딩 공부방
21종
  • 분류 전체보기 (174)
    • JAVA (64)
    • Springboot (46)
      • 블로그만들기 (45)
    • Database (60)
      • Oracle (60)
    • 프로젝트 3 (CELOVER) (0)
    • 개발서버 구축 (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

인기 글

최근 글

최근 댓글

hELLO · Designed By 정상우.
21종

종이의 코딩 공부방

Database/Oracle

[Oracle] SUBQUERY를 이용한 테이블 생성

2023. 7. 30. 17:36

< SUBQUERY를 이용한 테이블 생성 >

테이블 복사 뜨는 개념

[ 표현식 ]
CREATE TABLE 테이블명 
AS 서브쿼리;

-- EMPLOYEE 테이블을 복제한 새로운 테이블 생성
CREATE TABLE EMPLOYEE_COPY 
AS SELECT * 
    FROM EMPLOYEE;

SELECT * FROM EMPLOYEE_COPY;
--> 컬럼, 데이터값은 잘 복사되지만, 제약조건 같은 경우 NOT NULL만 복사됨..

 

 

테이블 구조만 복사

CREATE TABLE EMPLOYEE_COPY2
AS SELECT EMP_ID, EMP_NAME, SALARY, BONUS
    FROM EMPLOYEE -- 테이블 구조만 가져오고 싶다. 데이터 제외하고
    WHERE 1 = 0; -- 무조건 FALSE인 조건 : 구조만을 복사하고자 할 때 쓰이는 구문 (데이터 값은 필요 없을 때)

 

 

CREATE TABLE EMPLOYEE_COPY3
--AS SELECT EMP_ID, EMP_NAME, SALARY, SALARY * 12 -- 별칭이 안붙어있음
AS SELECT EMP_ID, EMP_NAME, SALARY, SALARY * 12 AS "연봉"
    FROM EMPLOYEE;
-- ORA-00998: must name this expression with a column alias
-- alias : 별칭
--> 서브쿼리 SELECT 절에 산술식 또는 함수식 기술된 경우 반드시 별칭을 지정해야됨!

 

    'Database/Oracle' 카테고리의 다른 글
    • [Oracle] 테이블 복사하기
    • [Oracle] DML(1) - INSERT
    • [Oracle] DEFAULT 옵션
    • [Oracle] CONSTRAINT(제약조건)_FOREIGN KEY(외래키)_삭제옵션
    21종
    21종
    코딩 공부한 것 정리하려고 만든 블로그

    티스토리툴바