SQL
Structured Query Language
개념
데이터베이스에서 데이터의 조작과 데이터 정의를 하기 위해서 사용하는 언어
사용자는 데이터베이스에 데이터를 입력, 조회, 수정, 삭제를 하기 위해서 SQL을 사용한다.
1970년대에 IBM 에서 최초로 개발
관계형 모델이라는 이론에서 파생되었다.
SQL != Database
종류
국제 표준화 기구에서 표준화한 문법을 ANSI SQL 이라고 한다. 각 DBMS 제조마다 개발한 고유 SQL도 있다.
SQL Server : Transact-SQL = T-SQL
Orable : PL/SQL
MySQL : SQL
국제표준 : ANSI SQL
각 제조사는 ANSI SQL 을 따르면서도 제품에 특화한 문법이나 명세를 추가한 SQL를 사용한다. 즉, ANSI SQL 을 기반으로 각 제조사별로 특화된 문법이 추가적으로 더 있는 셈!
ANSI SQL은 1986년 SQL-86이후 SQL:2019까지 발표되었다. (2019년 기준)
문법 종류
DDL : Data Define Language. 데이터 정의 언어
DML : Data Manipulation Language. 데이터 조작 언어
DCL : Data Control Language. 데이터 제어 언어
1. DDL
데이터베이스를 정의하는 언어로 테이블 및 스키마를 관리한다.
CREATE : 데이터베이스 혹은 테이블을 생성
ALTER : 데이터베이스 혹은 테이블을 수정
DROP : 데이터베이스 혹은 테이블을 삭제
TRUNCATE : 테이블을 초기화
테이블은 남아있고 데이터만 없어진다.
2. DML
데이터베이스 테이블에 입력된 데이터를 검색, 입력, 수정, 삭제하는 언어
SELECT : 데이터 검색
INSERT : 데이터 삽입
UPDATE : 데이터 수정
DELETE : 데이터 삭제
3. DCL
데이터베이스 접근 및 객체에 대한 권한을 부여한다.
GRANT : 특정 수행 권한을 부여
REVOKE : 특정 수행 권한을 삭제
COMMIT : 트랜잭션 작업을 완료하는 역할
ROLLBACK : 트랜잭션 작업을 취소하거나 이전 상태로 복구하는 역할
왜 SQL을 배워야 하는가
다양한 매체의 발달로 새로 생성되는 데이터의 양 증가
음석, 이미지, 텍스트 등 데이터 형태의 다양화
데이터에 기반한 의사결정이 일반화 됨
대부분의 데이터는 RDBMS 에 저장한다.
RDMBS에 저장된 데이터를 추출하려면 SQL을 사용해야한다.
RDBMS가 아닌 시스템에서도 SQL과 비슷한 문법을 사용해서 데이터를 추출 가능하다.
데이터 분석의 시작은 데이터 추출이다.
실제로 SQL은 프로그래밍, 데이터분석, 마케팅, 기획, 사업 등 다양한 분야에서 필수로 사용한다. 따라서 투자 대비 활용도가 매우 높은 언어!
Last updated