SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

SELECT 컬럼 as "별명", 컬럼 as "별명"....
FROM 테이블;

SELECT eno 사번, ename 이름,  job 업무
FROM emp;
--as는 생략 가능


--각 사원의 급여와 1년급여를 검색
--별명에 띄어쓰기가 있을때는 ""필수
SELECT eno 사번, ename 이름,  sal 급여 , sal * 12 "연간급여" 
FROM emp;


--사원의 연봉을 검색
--연봉 = 급여 sal * 12 + bonus(comm)
SELECT eno 사번, ename 이름, sal*12+comm"연봉" 
FROM emp;


-- null == 정의 없음. undefined./ !=0 
-- null과 연산시 결과값도 null이 됨.
-- 통계에서 null값을 가진 레코드를 의도적으로 포함시키거나 뻄으로써 의도적 오류를 발생시키기도 한다.
-- 0으로 대체하거나 다른 대처가 필요
-- NVL(**, ##) : **이 null값일 경우 ##으로 대체
SELECT eno 사번, ename 이름, sal, comm, sal*12+NVL(comm, 0)"연봉" 
FROM emp;

윤제니

테이블 이름 변경

ALTER TABLE 기존 테이블명 RENAME 변경 테이블명;


RENAME TABLE 기존 테이블명 TO 변경 테이블명;
SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

JOIN

ex) author 테이블과 topic 테이블 - 저장은 분산되어 있지만 두 테이블을 합쳐서 출력 (JOIN)

[ author 테이블 ]

SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

[ topic 테이블 ]

SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

[ JOIN ]

SELECT * FROM 테이블1 JOIN 테이블2 ON 테이블1.컬럼명=테이블2.컬럼명;

테이블1과 테이블2를 JOIN 하며, ON 뒤에는 두 테이블의 JOIN 조건을 명시
SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

 => author_id 와 id의 부분이 중복되므로 중복 부분을 제외한 원하는 컬럼만 출력되도록 해보자.

      SELECT 뒤에 *(전체) 대신 원하는 컬럼만 나열하여 출력 가능하다. but, id의 컬럼이 애매하다는 ERROR발생!

SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

JOIN 할 경우에는 두 테이블에 동일한 컬럼명이 존재할 경우 컬럼을 정확히 명시를 해줘야 한다. 

테이블명.컬럼명
SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

컬럼명을 변경하여 출력하고 싶은 경우

컬럼명 AS 변경 컬럼명 
SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

'DataBase > My SQL' 카테고리의 다른 글

Mac에서 Workbench 설치하기 , MySQL  (0)2020.09.16
MySQL - 테이블의 구조와 용어, 테이블 생성, 컬럼생성, 데이터 추가/출력/수정/삭제  (0)2020.05.09
MySQL - 구조, 스키마, 데이터베이스 생성, 제거, 확인, 사용, 나가기, 재접속  (0)2020.05.09
MySQL - MySQL 설치, 다운로드 , Terminal 설정 방법  (0)2020.05.09

[오라클/SQL] ALTER RENAME : 테이블 이름 변경, 컬럼(변수) 이름 변경, 제약조건 이름 바꾸기

SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong
리제2021. 1. 8. 12:03

SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

1. ALTER 명령어의 이해

ALTER는 DDL(Data Definition Language)에 속하는 명령어로, 테이블이나 컬럼의 이름을 바꾸거나 / 제약조건을 변경하거나 / 컬럼을 추가 또는 삭제하는 등의 다양한 테이블 변경 기능을 수행합니다.

ALTER 명령어를 용도별로 세분화하면 다음과 같습니다.

ALTER 명령어 유형

기능

ALTER RENAME

이름 변경

테이블 이름, 컬럼 이름, 제약조건 이름 변경

ALTER ADD

추가

테이블에 새로운 컬럼 추가, 새로운 제약조건 추가

ALTER MODIFY

유형 변경

테이블 컬럼의 데이터 유형(또는 크기) 변경

ALTER DROP

삭제

테이블에서 컬럼 삭제, 제약조건 삭제

ALTER READ

읽기/쓰기

읽기 전용 테이블로 변경 / 읽고 쓰기 가능한 테이블로 변경

(* 참고하면 좋은 이전 페이지 : 오라클SQL 주요 명령어 분류

https://blog.naver.com/regenesis90/222191970738 )

본 포스팅에서는 ALTER RENAME 기능을 다루고자 합니다.

2. ALTER RENAME의 용도와 표현

1) ALTER RENAME의 용도

ALTER RENAME은 테이블의 이름을 수정/변경하거나, 컬럼의 이름을 수정/변경하거나, 제약조건의 이름을 수정/변경합니다.

2) ALTER RENAME의 표현

(1) 기본식 - 테이블 이름 수정 :

테이블 이름을 A에서 B로 변경

alter table 테이블이름A rename to 테이블이름B;

(2) 기본식 - 컬럼 이름 수정 :

테이블A의 컬럼 이름을 K에서 L로 변경

alter table 테이블이름A rename column 컬럼이름K to 컬럼이름L;

(3) 기본식 - 제약조건 이름 수정 :

테이블A가 가진 제약조건X의 이름을 Y로 변경

alter table 테이블이름A rename constraints 제약조건이름X to 제약조건이름Y;

* 이하의 예제에서는 hr 연습계정의 employees 테이블을 복사한 employees_t 테이블을 사용합니다.

먼저, CREATE SELECT 구문을 사용하여 employees_t 테이블을 생성해 줍니다.

create table employees_t as select * from employees;

3. 예제 : ALTER RENAME의 사용

- 테이블 이름, 제약조건 이름, 컬럼 이름 바꾸기

1) 예제 : 테이블 이름 변경

employees_t 테이블의 이름을 employees_r로 바꾸기

alter table employees_t rename to employees_r;

위 SQL 문장을 실행(Ctrl+Enter)하면, 스크립트 출력 창에 '테이블 employee_t가 변경되었습니다' 메시지가 나타납니다.

* 이 때, 변경하려는 테이블 이름과 같은 이름의 테이블이 이미 존재하는 경우에는 테이블 이름이 변경되지 않습니다. 기존 테이블들의 이름과 중복되지 않는 다른 이름으로 바꾸어 주세요.

SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

테이블의 이름이 employees_r로 변경되었으므로, SELECT FROM 구문으로도 employees_r을 조회하면 결과가 나타나는 것을 확인할 수 있습니다.

2) 예제 : 컬럼 이름 변경

employees_r(*employees_t) 테이블에서

first_name 컬럼의 이름을 'namenamename'으로 바꾸기

alter table employees_r rename column first_name to namenamename;

위 '예제1)'에서의 employees_r 테이블에서 first_name 컬럼의 이름을 바꾸어 주는 것입니다. 이 또한, 다른 컬럼과 이름이 중복되지 않도록 유의해야 합니다.

SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

employees_r 테이블을 조회해 보면, first_name 컬럼의 이름이 namenamename으로 바뀌었음을 확인할 수 있습니다.

3) 예제 : 제약조건 이름 변경

employees_r(*employees_t) 테이블에서

job_id 변수관련 제약조건의 이름을 'nn_job'으로 바꾸기

SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

GUI로 employees_r 테이블의 제약조건을 목록으로 조회할 수 있습니다.

- CONSTRAINT_NAME : 제약조건 이름

- CONSTRAINT_TYPE : 제약조건 유형

- SEARCH_CONDITION : 제약조건의 체크 조건

job_id와 관련된 제약조건의 이름은 SYS_C0011660입니다. 이 제약조건의 이름을 'nn_job'으로 바꾸어 주는 SQL 문장은 다음과 같습니다.

alter table employees_r rename constraints SYS_C0011660 to nn_job;

위 문장을 실행(Ctrl+Enter)하면, 제약조건의 이름이 변경됩니다.

SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

SQL SELECT 컬럼 이름 변경 - SQL SELECT keolleom ileum byeongyeong

다시 GUI를 통해 employees_r 테이블의 제약조건 리스트를 조회하였습니다. 'NN_JOB' 제약조건으로 job_id 관련 제약조건의 이름이 변경되어 있습니다.

#오라클 #SQL #Oracle #오라클SQL #OracleSQLDeveloper #alter #rename #alterrename #테이블이름 #컬럼이름 #변경