2. 고급 SQL 작성하기
2-1. 테이블 외의 데이터 사전 조회
1) 테이블 외의 데이터 사전 검색
데이터 사전에는 데이터베이스 객체인 테이블 외에도
인덱스, 뷰에 대한 메타 데이터(Meta data)를 확인할 수 있다.
(1) 오라클에서 데이터 사전 검색
(2) MY-SQL에서 데이터 사전 검색
use Information_schema; -- information_schema로 이동
show tables; -- 데이터 사전 목록 보기
-- 또 다른 방법
select * from information_schema.tables;
2) 테이블 외의 데이터 사전 조회하기(MY-SQL 기준)
(1) 데이터 사전 검색
(2) 테이블 목록과 칼럼 목록 조회
(3) 기본 키 또는 유일 키 조회
(4) 인덱스 목록 조회
(5) 뷰 목록 조회
2-2. 인덱스와 뷰 작성
1) 인덱스 활용
(1) 인덱스 개념
저장된 데이터를 빠르게 검색할 수 있는 수단이자, 테이블에 대한 조회 속도를 높여 주는 자료 구조
(2) 인덱스 사용
① 인덱스 생성
CREATE [UNIQUE] INDEX <인덱스명> ON <테이블명> (<칼럼명 나열>);
② 인덱스 삭제
DROP INDEX <인덱스명>;
③ 인덱스 변경
ALTER [UNIQUE] INDEX <인덱스명> ON <테이블명> (<칼럼명 나열>);
(3) 인덱스 설계 과정
2) 뷰(View) 개요
(1) 뷰 정의
기본 테이블로부터 유도된 가상 테이블
→ 물리적으로 존재하지 않지만 테이블로 있는 것처럼 간주
-- View 조회 방법
SELECT * FROM <View Name>;
(2) 뷰 장·단점
2) 뷰 생성
CREATE VIEW <뷰 이름>(칼럼 목록) AS <뷰를 통해 보여줄 데이터 조회용 쿼리문>;
3) 뷰 삭제 및 변경
DROP VIEW <View Name>;
4) 뷰 내용 변경
뷰를 통해 접근 가능한 데이터에 대한 변경이 가능. 하지만 일부 제약이 존재
ex) PK에 해당하는 칼럼이 뷰에 정의되어 있지 않다면 INSERT 불가
참고자료 : https://www.ncs.go.kr