티스토리 뷰

SQL/SQL

[SQL/초보] SQL이란

개발자 김챠챠 2025. 1. 23. 23:08

SQL

SQL(Structed Query Language)

- 초기엔 데이터를 관리하는 방법은 DBMS 제조사마다 상이 - 이식성 등이 좋지 않음

- 데이터를 관리하는 표준언어의 필요성에 탄생한 것이 SQL

- 쿼리(Query)는 "질의"라는 뜻으로, DBMS에 요청한다는 의미

- 보통 에스큐엘이라고 읽지만, 사람에 따라  시퀄이라고 읽는 사람도 있음 

SQL의 역사

1970년 IBM의 시스템 R에 도입한 SEQUEL(Structed English Query Language) 가 시초

  • 자연어랑 유사하단 의미로 English를 넣었음
  • 이후 상표권 분쟁때 English를 빼서 구조화된 질의 언어(SQL; Structed Query Language)로 이름 변경

SQL 표준 / 방언

- ANSI라는 국제 표준단체에서 SQL 표준을 제정

SQL 86 ANSI에서 제정한 최초 표준
SQL 92 대규모 개정 및 정리, 실질적 첫 표준
SQL 99 정규표현식, 트리거, 절차적 흐름
SQL 2003 XML 관련 기능 추가, 시퀀스 생성기, MERGE 구문 추가
SQL 2008 INSTEAD OF 트리거 추가, TRUNCATE 구문 추가
SQL 2011 임시 데이터베이스 지원
SQL 2016 JSON 지원, 행 패턴 인식, DECFLOAT 타입 추

 

- 실질적 표준은 SQL99로, 이후에 추가된 건 대부분 고급 기능들

- SQL은 다른 표준과 달리 강제성이 약하고 표준이 반드시 우월하진 않기 때문에 DBMS마다 방언(dialect)가 존재

  • 대부분의 기본 명령어는 표준 SQL에 기반한 명령어를 채용하였음
  • 오라클은 곻유의 고급기능 및 프로그래밍 기능이 있는 PL/SQL 지원
  • SQL Server은 자체적인 TSQL(Transact SQL)을 지원 

SQL 특징

SQL은 여타의 프로그래밍 언어와 마찬가지로 고유의 문법체계를 가지고 있음

자연어까진 아니지만 최대한 비슷한 문법 형식을 지녀, 초보자도 익숙해지기 쉬움

대화식 언어

- SQL은 대화처럼 명령을 내리는 즉시 실행하여 결과를 돌려줌

- 명령문이 짧고 간결한 대신, 간단한 명령어를 조합하여 복잡한 작업 처리

  • 당연히 현업에선 조합된 결과물이 몇십~몇백줄이 되는 경우도 있음 (간단하다는 말을 믿지마라)
  • 자체 제어문은 빈약하기 때문에 다른 프로그래밍/스크립트 언어랑 조합해서 사용하기도 함

선언적 언어

- SQL은 요구사항만 명시할 뿐 구체적으로 어떻게 수행하는지는 중요하지 않음

- 명령의 실제 수행방식은 DBMS가 알아서 결정

 

※ 최종 수정일 : 2025-01-24

'SQL > SQL' 카테고리의 다른 글

[SQL/초보] RDBMS의 기본 용어  (7) 2025.01.24
[SQL/초보] DB와 DBMS란  (5) 2025.01.23
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/12   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함