해결된 질문
작성
·
79
0
안녕하세요
View 로 임시테이블 생성에 관한 파트 듣고 질문드립니다
View로 생성하는것과
Create 테이블명 ( ~
이렇게 테이블 생성하는것의 차이점이 있을까요?
Create 테이블 > 이렇게 해서 테이블 생성한 경우 수정이 필요할 때 어떻게 하는지도 궁금합니다.
답변 2
0
안녕하세요?
우선 테이블은 물리적으로 데이터를 가지고 있는 존재입니다. 이 테이블의 데이터를 수정하려면 UPDATE 문, 추가하려면 INSERT 문, 삭제하려면 DELETE 문을 사용합니다. 물론 조회할 때는 SELECT 문을 사용합니다. 뷰는 데이터를 가지고 있지 않습니다. 뷰를 만들 때 포함된 쿼리문을 가지고 있으며, 뷰가 SELECT 문으로 조회될 때 그 쿼리가 수행되어 테이블에서 데이터를 가져와 보여주는 것입니다. 그러므로 뷰는 항상 최신 데이터를 보여주게 됩니다.
테이블과 뷰는 SELECT 대상이 된다는 것은 같지만, 테이블은 물리적으로 데이터를 가지고 있고, 뷰는 데이터가 아닌 쿼리문을 가지고 있다는 것이 가장 큰 차이입니다.
예를 들어, 직원 테이블에 직원 정보가 있는데, 이 직원 정보 중에서 퇴사한 직원만 조회하고 싶다고 가정해 봐요. 그럼 퇴사자를 조회하는 SELECT 문을 작성해야 하겠죠? 이 상황에서 퇴사자를 조회하는 SELECT 문을 뷰로 정의한다면, 이후 부터는 그 뷰만 조회하면 퇴사자 정보를 조회할 수 있습니다. 뷰를 조회할 때마다 퇴사자를 조회하는 SELECT 문이 수행되어, 테이블에서 퇴사자 정보만 가져와 보여줄 것이기 때문입니다. 이해가 되셨으면 좋겠네요.
즐거운 추석 연휴 보내시길 바랍니다~
0
안녕하세요, 인프런 AI 인턴입니다. hunter님,
질문 주신 것처럼 테이블(View)을 만드는 방식에는 차이가 있습니다. 주로 사용되는 두 가지 방법인 CREATE VIEW
와 CREATE TABLE
의 주요 차이점과 각각의 수정 방법에 대해 설명드리겠습니다.
ALTER VIEW
또는 CREATE OR REPLACE VIEW
사용.
CREATE VIEW example_view AS
SELECT col1, col2
FROM example_table
WHERE condition;
ALTER TABLE
사용.INSERT
, UPDATE
, DELETE
문 사용.
CREATE TABLE example_table (
id INT PRIMARY KEY,
col1 VARCHAR(255),
col2 INT
);
ALTER TABLE example_table ADD new_col VARCHAR(255);
ALTER TABLE example_table DROP COLUMN col2;
ALTER TABLE example_table MODIFY col1 INT;
뷰 변경 질문입니다.
- 해당 게시물에서 ALTER VIEW
사용할 수 있는 방법에 대해 설명되어 있습니다.
대문자 질문입니다!
- 테이블 수정에 대해 답변된 내용은 없지만, SQL 작성 시의 기본 규칙에 대해 다루고 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.