brunch

You can make anything
by writing

C.S.Lewis

by 엘리스코딩 elice Jun 07. 2019

데이터 까보기의 기술, SQL

 데이터베이스와 SQL의 개념

마케터이거나 데이터를 다루는 업무를 하시는 분이라면 한 번쯤은 들어보셨을 언어 SQL!

혹시 여러분 중 데이터 보기를 방 안의 코끼리 보듯 하시는 분 계시나요? 

짐 덩이 같이만 느껴지는 데이터 속에서 알짜배기만 쏙쏙 뽑아낼 SQL에 대해서 함께 알아보고 데이터 까보기, 가볍게 시작해봅시다.



데이터베이스(Database)란?


흔히 DB라고 줄여서 부르는 데이터베이스는 여러 사람이 공유하여 사용하기 위한 데이터들의 집합으로, 여러 시스템들의 통합된 정보들을 관리하는 곳입니다. 쉽게 말해 ‘데이터들의 저장소’라고 이해해볼 수 있어요.


엘리스를 예로 들어보면 엘리스 아카데미에 접속하는 사용자, 접속 시간, 실습 코드, 코딩하는 시간, 질문 대화 내용 등 웹 사이트 내에서 형성되는 정보들이 일정한 형태로 저장되는 곳이 바로 데이터베이스입니다. 

지금 이 순간에도 끊임없이 자료들이 쌓이고 있기 때문에 데이터베이스는 엄청 방대한 모습을 하고 있겠죠!


데이터베이스는 다양한 분류의 책들이 보관된 거대한 서고에 비유해볼 수 있어요. (Photo by Tobias Fischer on Unsplash)



쿼리(Query)란?


그럼 데이터는 시간이 흐르는 대로 무한정 쌓이기만 하는 것일까요?

그냥 놔두면 그렇겠지만 웹 사이트가 사용자와 정상적으로 상호작용하는 데에는 데이터베이스를 관리해주는 일이 꼭 필요합니다. 그래서 데이터베이스에 자료를 추가하거나 제거하고 또 방대한 양의 정보를 더 효율적으로 관리하기 위해 구조를 바꾸는 등의 일을 하게 되죠. 

또한 우리는 데이터베이스에서 유익한 정보를 얻고 싶을 때가 많습니다. 이때 데이터베이스 서버에다가 필요한 데이터를 요청하게 됩니다.


이렇듯 데이터베이스를 관리하기 위한 명령을 하거나 데이터베이스에게 원하는 정보를 달라고 요청하는 등의 행위를 쿼리(=질의)라고 합니다. 쿼리를 통해 데이터베이스를 제어, 관리하고 원하는 정보를 검색하게 되는 것이죠!


클라이언트는 서버에 데이터를 요청하는 쿼리를 보냅니다.



SQL이란?


위에서 말한 데이터베이스를 다루고 명령을 내려서 원하는 업무를 하기 위해서는 코딩이 필요하겠지요. 데이터베이스 중 관계형 데이터베이스*를 관리하기 위해 만들어진 언어가 바로 SQL입니다. 

SQL로 쿼리 문을 작성하여 데이터베이스 서버에다 요청을 하면 데이터베이스 서버에서 우리가 요청한 작업을 수행해줍니다. SQL 이란 생소한 이름은 Structured Query Language의 줄임말인데요. 한글로 풀어보면 '구조화된 쿼리 언어'입니다. 쿼리를 쓸 수 있는 구조를 갖춘 언어라고 쉽게 생각해볼 수 있어요.


중요한 건 SQL을 알면 데이터베이스를 관리하고 데이터를 요청하는 등의 여러 작업을 할 수 있다는 것이에요!


예를 하나 들어볼까요?

도서관 책 목록의 데이터베이스가 있다고 해봅시다.

데이터베이스의 모습


이 중 2016년 이후에 도서관에서 구매한 책들의 데이터만 보고 싶다면 어떻게 할까요? 


 select * from booklist where date_received >= 20160101


SQL을 쓸 줄 안다면 위와 같은 간단한 코딩으로 아래의 결과를 얻을 수 있습니다.


원하는 데이터만 검색


이는 매우 간단해 보이지만, 만약 책의 권수가 수천수만 권에 달하거나 특정 출판사에서 특정 년도에 출판한 책 등 다양한 조건이 추가되는 상황처럼 데이터의 규모와 작업의 복잡성이 큰 경우에도 매우 유용하게 사용할 수 있겠지요. 



SQL 기초 과목


데이터와 친해지고 싶은 분들이라면 주목! 엘리스 SQL 기초 과목이 신설되었습니다.

코딩을 전혀 모르는 분들도 처음부터 차근차근 따라하면서 SQL을 익힐 수 있도록 다양한 실습을 통해 데이터를 다루는 법을 배웁니다. 

별도의 프로그램 설치 없이 엘리스에 로그인만으로 모든 코딩 실습이 가능하니 데이터와 친해지고 싶은 마케터, 기획자, 디자이너 또는 프로그래밍 입문자분들이라면 최고로 쉽고 확실하게 SQL에 입문해보세요. :)


▶ 과목 정보 자세히 보기 ◀


커리큘럼

1장. SQL 시작하기 | SQL에 대해 알아보고 기본적인 데이터를 검색하는 방법에 대해서 배웁니다.

2장. 데이터를 제어하는 DML | 데이터베이스에 존재하는 데이터를 제어하려면? 'DML'에 대해서 배워봅니다.

3장. SQL과 함수 | 복잡하고 거대한 데이터베이스를 쉽게 제어하도록 도와주는 함수들에 대해서 알아봅니다.

4장. 다수의 테이블 제어하기 | 두 개 이상의 테이블에서 데이터를 검색하는 방법에 대해서 배웁니다.

실력 확인 테스트! | 테스트에 응시하여 그동안 배운 실력을 점검해봅니다. 이수 기준 통과 시 이수증 발행!




* 관계형 데이터베이스 : 데이터베이스의 한 종류로서 데이터베이스의 주류를 이루고 있습니다. Mysql, Oracle, MSsql 등의 제품이 여기에 속합니다. SQL은 관계형 데이터베이스를 관리하기 위해 만들어진 언어로, SQL을 알면 Mysql, Oracle, MSsql 등의 관계형 데이터베이스를 쉽게 관리할 수 있게 됩니다.

* Cover image : Photo by Caspar Camille Rubin on Unsplash





초보자도 가능한 실습형 코딩 수업!

언제나, 어디서나 코딩을 배우는 세상을 만들어 나갑니다.

- 엘리스 아카데미

- 엘리스 기관

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari