Just Do It

View & index

by 핫도구
반응형
view란?

물리적인 테이블에 근거한 논리적인 가상테이블이므로 별도의 저장공간을 필요로 하지 않는다.

 

  • 장점

 - 자주 검색하는 자료유형을 가상의 테이블로 만들어 매번 조건문을 입력하지 않아도 됨
 - 보안에 유리
 - view를 통해 update, delete를 활용하면 table에 반영이 됨.

 

  • 생성방법
create  view view_name as select column_names from table_name 이 기본이다.
하지만 중복이 된다.

 

CREATE VIEW myview1 AS SELECT studentno, name, age, teamno FROM student WHERE name != '김갈비';

 

이전에 했던 조장의 이름 또한 다른 view를 생성해 데이터를 쉽게 추출할 수 있다.

CREATE VIEW myview2 AS SELECT studentno, name, student.teamno, teamname, captain FROM student JOIN team ON student.teamno = team.teamno;

SELECT v.studentno, v.name, v.teamno, v.teamname, v.captain, v2.name captainName FROM myview2 v JOIN myview2 v2 ON v.captain = v2.studentno;

 


index 

 - sql 구문의 처리 속도를 향상시키기 위하여 column에 생성하는 객체 단, index를 위한 추가 공간이 필요하다. 그렇기 때문에 insert, update, delete가 자중 일어나는 경우에는 성능에 많은 영향을 준다.

 

  • 생성 방법
create index index_name on table_name(column_name)  혹은
alter table table_name add index index_name(column_name)
CREATE INDEX teamnames ON team(teamname);
ALTER TABLE team ADD INDEX teamnamess(teamname);

SHOW INDEX FROM team;

그리고 team을 보면 

 

  • 지우는 방법
alter table table_name drop index index_name
ALTER TABLE team DROP INDEX teamnames

 

반응형

'Mysql > Basic' 카테고리의 다른 글

find_in_set & limit & distinct  (0) 2024.08.05
DML  (0) 2024.08.05
subquery & groupfunction  (0) 2024.08.05
join  (0) 2024.08.05
제약조건  (0) 2024.07.31

블로그의 정보

AquaMan

핫도구

활동하기