Computer Science/AI & Data

[AI & Data] SQL 기초 공부 - W3School SQL exercises

Henry Cho 2025. 3. 2. 06:01

포스트 난이도: HOO_Intern


#  데이터가 중요한 이유

10년 전만에 해도 인공지능을 다룰 줄 안다는 게 노벨티 했었지만 이제는 인공지능 개발자들이 정말 많이 늘어났고 이제는 개발자라면 간단한 머신러닝 라이브러리 정도는 다룰 줄 알아야 할 정도로 인공지능이 대중화되었다. 과거에는 인공지능을 application 하는 부분에 대해서 우선시되었다면, 이제는 인공지능을 사용할 줄 아는 것뿐만 아니라 인공지능에 들어가는 데이터를 어떻게 관리를 해야 할 지에 대한 관심이 커졌다. 예를 들어 자동차가 인공지능이라고 가정하면, 예전에는 자동차를 만들어서 타야했는데 이제는 표준화된 모델이 있어서 일일이 만들어서 탈 필요가 없어진 셈이다. 다만 자동차에 들어가는 연료가 좋은 연료인지, 연료 종류가 무엇인지에 대해서 점점 중요해지는 것이 연료에 따라서 똑같은 자동차 모델이라고 할지라도 성능과 내구성이 달라질 수 있기 때문이다.

 

그렇다 보니 어떤 인공지능 개발자를 꿈꾸든 데이터 기반의 인공지능을 다루는 현재로서는 데이터를 잘 다룰 줄 알아야 한다. 물론 데이터 관련 개발자와 같이 데이터를 다뤄야 한다는 건 아니다. 마치 우리가 자동차를 타기 위해서 연료의 성분부터 만든 과정을 모두 모르지만 최소한 해당 연료의 종류가 무엇인지 알아야 인공지능이라는 모델의 자동차를 망가뜨리지 않을 수 있다.

 

그래서 이번 포스트에서 소개할 내용은 SQL에 대해서 기초 지식을 얻을 수 있는 W3Schools의 50개 이상의 Exercises 링크를 이야기해볼까 한다.


# W3Schools

개발쟁이라면 W3 Schools를 모를 수가 없다. SQL 뿐만 아니라 기초적인 프로그래밍 언어부터 알고리즘 공부하기에 좋은 웹사이트이다. 무료로도 다양한 자료들이 있고 유료로 더 많은 자료를 살펴볼 수도 있다. 하지만 가난한 학생들의 지갑 사정을 잘 알기에 이번에 소개하는 Exercises는 무료로 학습이 가능하다.

 

https://www.w3schools.com/sql/sql_exercises.asp

 

W3Schools.com

W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.

www.w3schools.com

 

나는 W3 Schools가 좋아요를 말하고 싶은 게 아니라 위의 링크에 있는 특정 exercises들을 소개해주고 싶은 것이다. 그 이유는 처음 어떤 분야이든 개발 공부를 하는 데 있어서 막막하기 때문이다. 본인의 인생은 본인이 찾아서 가야 하는 걸 알지만 솔직히 말해서 처음 Computer science 전공을 선택했거나, 아니면 처음 SQL이라는 것에 관심이 생겨 배워보려고 하는데 어디서부터 시작해야 할지 어렵다. 수업을 듣거나 강의를 봐도 솔직히 무슨 소리하는지 100% 이해하기가 어렵다.

 

SQL의 경우, 언어와 매우 흡사하지만 다양한 기능과 용어들이 존재하기 때문에 처음에 SQL이 가진 작성 방식과 용어들을 익히는데 시간이 걸릴 수밖에 없다. 반복적으로 직접 입력해 보고 각 기능이나 용어들이 가진 역할을 이해하는 연습을 해야 하는데, 이때 사용하기 좋은 툴이 바로 위의 링크에 있는 SQL exercises이다.


Figure 1. Sourced by https://www.w3schools.com/sql/sql_exercises.asp


해당 SQL exercises에서는 50개 넘는 카테고리가 있고 각 카테고리마다 10개 내외의 문제가 존재한다. Figure 1처럼 용어나 기능이 의미하는 것이 무엇인지 물어보는 질문도 있고 직접 입력해 보면서 SQL의 문법이라고 할 수 있는 작성 방식을 익히는 연습을 해볼 수 있다. 가장 좋은 점은 모든 Exercises를 풀고 나면 기본적인 SQL를 사용하는 데 있어서 어려움이 없을 정도로 문제와 단계별 질문이 잘 구성되어 있었다. 안 좋은 거나 안 써보고 브로들에게 추천해 볼 수는 없어서 나도 끝까지 문제를 끝내봤다. 물론 문제량이 꽤 많은 건 사실이다. 하지만 SQL를 전반적으로 알 수 있다는 관점에서는 짧은 시간에 빠르게 익힐 수 있어서 정말 효율적이라고 본다.

 

해당 링크의 Exercises는 무료로 사용이 가능하다. 또한 계정을 만들지 않고도 사용이 가능한데, 다만 내가 어디까지 학습했는지는 기록이 되지 않는다. 계정을 만들어도 유료 플랜을 따로 구입하지 않으면 무료로 사용이 가능하기에 편한 대로 골라서 하면 된다.

 

나도 오랜만에 보는지라 몇 문제들이 헷갈리는 경우가 종종 있었다. 아무래도 대충 작성하면 에러코드로 알려줘서인지 "뭐야 왜 안돼?"이런 적이 한 3문제 정도 있었던 것 같다. 마치 구글에서 영어 스펠링을 잘못 써도 알아서 고쳐줘서 그대로 습관이 남은 거와 비슷했다.

 

결론은, "SQL 쓸 일이 없는데요, 나는 인공지능 개발자할 건데요."라고 해도 기본적으로 데이터를 어떻게 다뤄야 하는지는 알아야 하고 데이터를 다루는 아주 기본적인 방법이자 데이터를 다루기 위한 언어인 SQL에 대해서는 알고 가야 한다고 본다. 또한 SQL을 배워보려고 하는데 어디서부터 시작해야 할지 모르거나 강의를 들어봤는데 복습이 필요하다면 해당 링크를 통해서 무료로 학습해 보는 것을 추천한다.

 

나도 재미있게 문제를 풀어서 브로들에게 추천해주고 싶어서 글을 남기게 되었다.


 

728x90