3.1 SQL이란?
이 책의 궁극적인 목적은 SQL을 학습해 RDBMS 상에서 데이터를 원하는 대로 다루는 것입니다. 이번 장부터 본격적으로 SQL에 대해서 알아보도록 하죠.
SQL은 Structured Query Language의 약자로 RDBMS와 소통하는 프로그래밍 언어입니다. SQL은 우리말로 ‘구조화된 혹은 구조적인 질의 언어’라고 옮길 수 있는데, 이 이름만으로도 SQL에 대해 어느 정도 파악할 수 있습니다.
먼저 ‘구조적’ 혹은 ‘구조화된’이란 것은 어떤 틀이나 형식이 정해져 있다는 말입니다. 영어에는 5가지 형식의 문장이 있습니다. 그런데 영어를 사용할 때 반드시 이 5가지 형식에 맞춰 말을 하거나 문장을 써야 할까요? 꼭 그렇지는 않습니다. 언어에 문법이 존재하긴 하지만, 언어는 대화 상대가 사람이기 때문에 융통성을 발휘할 여지가 많습니다. 며칠 전 지하철을 타려고 기다리던 중에 외국인 여성 한 분이 길을 물어봤는데, 알고 보니 반대편으로 건너가서 타야 했습니다. 그래서 반대편을 가리키며 “the other side, the other side”라고 했죠. 5형식에 위배되지만 그 여성은 곧바로 이해하고 고맙다고 하더군요. 하지만 SQL 같은 컴퓨터 언어는 다릅니다. SQL의 대화 상대는 융통성이 없는 컴퓨터이기 때문에 문법을 정확히 지켜야 합니다.