본문 바로가기
IT/SQL 기초강좌 (PostgreSQL)

64강 SQL 초석 다지기 : PostgreSQL RENAME COLUMN

by DoitSQL 2023. 1. 7.
728x90

PostgreSQL 기초강의, PostgreSQL 기초강좌, PostgreSQ

64강 SQL 초석 다지기 : PostgreSQL RENAME COLUMN   

 

SQL 초석 다지기 64강 시작합니다.

 

이번 시간에는

 PostgreSQL RENAME COLUMN

에 대해서 알아보는 시간입니다.

 

요약: 이번 강의에서는 ALTER TABLE 문에서 RENAME COLUM 절을 사용하여 테이블의 하나 이상의 열 이름을 변경하는 방법을 배우게 됩니다.


Introduction to PostgreSQL RENAME COLUMN clause   

테이블의 열 이름을 변경하려면 다음과 같이 RENAME COLUMN 절과 함께 ALTER TABLE 문을 사용합니다.

ALTER TABLE table_name 
RENAME COLUMN column_name TO new_column_name;   

이 문장에서:

  • 먼저 ALTER TABLE 절 뒤에 이름을 변경할 열이 들어 있는 테이블의 이름을 지정합니다.
  • 둘째, RENAME COLUMN 키워드 뒤에 이름을 변경할 열의 이름을 입력합니다.
  • 셋째, 대상 키워드 뒤에 있는 열의 새 이름을 지정합니다.

문의 COLUMN 키워드는 선택 사항이므로 다음과 같이 생략할 수 있습니다.

ALTER TABLE table_name 
RENAME column_name TO new_column_name;   

 

어떤 이유로 존재하지 않는 열의 이름을 변경하려고 하면 PostgreSQL에서 오류가 발생합니다. 불행하게도 PostgreSQL은 RENAME 절에 IF EXISTS 옵션을 제공하지 않습니다.

여러 열의 이름을 바꾸려면 ALTER TABLE RENAME COLUMN 문을 한 번에 하나씩 여러 번 실행해야 합니다.

ALTER TABLE table_name
RENAME column_name1 TO new_column_name1;

ALTER TABLE table_name
RENAME column_name2 TO new_column_name2;   

 

VIEWS, 외부 키 제약 조건, 트리거 및 저장 프로시저와 같은 다른 데이터베이스 개체에서 참조하는 열의 이름을 변경하는 경우 PostgreSQL은 종속 개체의 열 이름을 자동으로 변경합니다.


PostgreSQL RENAME COLUMN examples   

빠른 이해를 위해 ALTER TABLE RENAME COLUMN을 사용하는 몇 가지 예를 들어 보겠습니다.

 

Setting the sample tables   

먼저 두 개의 새 테이블 customers과 customer_group을 만듭니다.

CREATE TABLE customer_groups (
    id serial PRIMARY KEY,
    name VARCHAR NOT NULL
);

CREATE TABLE customers (
    id serial PRIMARY KEY,
    name VARCHAR NOT NULL,
    phone VARCHAR NOT NULL,
    email VARCHAR,
    group_id INT,
    FOREIGN KEY (group_id) REFERENCES customer_groups (id)
);   

 

그런 다음 customers 및 customer_groups 테이블을 기반으로 customer_data라는 새 VIEW를 생성합니다.

CREATE VIEW customer_data 
AS SELECT
    c.id,
    c.name,
    g.name customer_group
FROM
    customers c
INNER JOIN customer_groups g ON g.id = c.group_id;   

 

 

1) Using RENAME COLUMN to rename one column example   

다음 문은 ALTER TABLE RENAME COLUMN 문을 사용하여 고객 테이블의 이메일 열 이름을 contact_email로 변경합니다.

ALTER TABLE customers 
RENAME COLUMN email TO contact_email;  

 

 

2) Using RENAME COLUMN to rename a column that has dependent objects example   

이 예에서는 ALTER TABLE RENAME COLUMN 문을 사용하여 customer_groups 테이블의 name 열을 group_name으로 변경합니다.  name 열은 customer_data view에 사용됩니다.

ALTER TABLE customer_groups 
RENAME COLUMN name TO group_name;  

 

이제 name 열의 변경이 customer_data 뷰에 계단식으로 적용되었는지 확인할 수 있습니다.

뷰 정의에서 볼 수 있듯이 이름 열이 group_name으로 변경되었습니다.

 

 

3) Using multiple RENAME COLUMN to rename multiple columns example   

다음 명령문은 고객 테이블의 name과 phone을 각각 customer_name 및 contact_phone으로 변경합니다.

ALTER TABLE customers 
RENAME COLUMN name TO customer_name;

ALTER TABLE customers
RENAME COLUMN phone TO contact_phone;   

 

결과를 보겠습니다.

변경된 걸 확인할 수 있습니다.


이번 시간에는 ALTER TABLE 문에서 RNAME COLUM 절을 사용하여 열 이름을 바꾸는 방법에 대해 배웠습니다.

 

다음 시간에 만나요.


본 강의는 PostgreSQL Tutorial을 참조합니다.  https://www.postgresqltutorial.com/
Do it! SQL을 찾아 주셔서 감사합니다. 공감 ♥ , 댓글이 큰 힘이 됩니다.

 

728x90

댓글