ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • SQL 프로그래밍 1 - SQL을 학습하는 방법과 연습환경(sql fiddle, sql test)
    데이터분석/SQL 2022. 1. 1. 14:38
    반응형

    데이터 분석이 화두에 오르면서 데이터베이스에서 대이터를 추출하는 SQL에 대한 관심도가 높아지고 있다.

     

    1. 그럼 우리가 왜 SQL을 배워야 하는 걸까?

    - 일하는데 많이 쓰인다.

    요새는 개발자나 데이터 분석 직군뿐 아니라 기획자, 운영 등 비개발 직군에서도 SQL로 데이터를 뽑아서 기획이나 보고서를 작성하는 것 같다. 

     

    - 데이터 분석가 채용 프로세스에서 코딩 테스트를 SQL로 치는 경우가 많다.

    아래의 몇몇 기업들의 데이터 분석가(Data Analyst) 채용절차를 가져온 것이다. 따로 명시하지 않아도 간단한 코딩 테스트를 진행하는 회사들도 있다.

    [채용절차]
    • 서류전형 > 직무 인터뷰 > 조직문화 인터뷰 > 처우협의 > 최종합격
    • 지원자의 이력 및 경력 사항에 따라 SQL 테스트가 추가될 수 있습니다.
    
    [기타 사항]
    • 전형 절차: 서류 전형 → 전화 면접 → SQL Test/1차 면접 → 2-3차 면접→ 최종 합격 
    (2-3차 면접은 하루에 연달아 진행됩니다/총 2일 진행. 포지션에 따라 과제 전형 혹은 추가 면접이 진행될 수 있습니다.)
    
    채용절차 및 제출서류
    • 채용 절차 : 서류합격 ⇒ 사전과제(코딩) ⇒ 1차 인터뷰 ⇒ 대표 인터뷰 ⇒ 최종합격
    
    [채용절차]
    서류전형→코딩테스트→면접→처우산정→내부승인→최종 합격(오퍼 레터 발송)

    - 비개발 직군이라도 SQL을 할줄 아는 것과 모르는 것에 대한 차이가 있을 것이다.

    옛날 부모님 세대에서는 영어와 엑셀등을 잘 다루면 일할 때 엄청난 효율을 보여줬다면 우리 세대에 와서는 점점 디지털화되어가고 있다. 영어, 엑셀 이런 건 이제 기본이고 직접 회사 데이터에 접근하여 유의미한 인사이트를 뽑아내는 인재가 점점 중요시되고 있는 것이다.

     

    2. SQL을 어떻게 학습해야 하는 걸까? 

    사실 이부분이 가장 문제가 된다. 다들 SQL을 배우고 싶어도 마땅히 배울 수 있는 방법에 대해서 모르는 것 같다. 이건 내가 학생인 경우와 SQL을 활용하고 싶은 직장인에 따라서 다를 것 같다.

     

    - 학생인 경우

    이는 취업을 목적으로 SQL을 배우는 경우가 많을 것 인데 처음에 정말 모르겠으면 자격증을 목표로 준비해보는 것도 괜찮은 방법이 될 것이다.

     

    데이터 자격 시험 중 SQLD(SQL 개발자) 시험이 있는데 그냥 SQL 전반에서 이런 언어이구나 파악하기 좋은 시험이라고 생각한다. SQLP는 실제로 튜닝까지 이어지는 어려운 시험이라고 들었다. 나는 SQLD까지만 땄다.

     

    이 자격증이 취업을 보장해주는 것은 아니지만 그래도 있는 것과 없는 것은 분명 SQL에 대한 이해도에서 조금은 차이가 날 것이라고 생각한다. 또한 이것을 준비하면서 당연하게 실습을 어느 정도는 해볼 수 있을 것이라 생각한다.

     

    - 직장인의 경우

    요약하자면 자기 업무에 적용해보길 바란다. 직장인의 경우 운영팀이나 기획쪽이나 기타 데이터를 필요로 하는 상황에서 데이터 분석가한테 데이터를 요청하는 경우가 많다. 이런 경우에 자기가 SQL로 데이터를 뽑아 자기의 전문성을 강화하고 싶고 본인의 가치를 높이고 싶은 사람들 중에서 SQL을 배우려는 사람들이 많다. 그래서 이런 경우 자기가 회사 DB나 분석 DB의 접근권한을 받아서 직접 SQL을 해보는 것이 가장 실력을 빨리 늘릴 수 있는 방법이 될 것이다. 사실 문법이나 기타 활용방법에 대해서는 인터넷 강의나 구글링으로도 충분히 배울 수 있다.

     

    이후에 자격증을 목표로해서 더 깊게 공부해도 좋고 아니면 더 코딩 쪽으로 공부할 수 있게 되는 계기가 될 수 도 있다.

     

    3. 편하게 SQL 실습 환경을 구성해보자

    연습을 하고 싶어도 실습환경부터 구성하기 어렵고 가볍게 뭔가 쿼리를 쳐보면서 시작하고 싶은 사람이 많을 것이다.

    아래의 사이트에서 실습을 하면 따로 내 컴퓨터에 깔지 않아도 공짜로 활용이 가능하다.

     

    1. http://sqlfiddle.com/

     

    SQL Fiddle | A tool for easy online testing and sharing of database problems and their solutions.

    Query Panel Use this panel to try to solve the problem with other SQL statements (SELECTs, etc...). Results will be displayed below. Share your queries by copying and pasting the URL that is generated after each run.

    sqlfiddle.com

     

    인터페이스 설명

    - db 선택하고 테이블 만들기

    sql fiddle 1

    검은색 박스: db를 선택할 수 있다. (oracle, mysql, postgresql, sqlite, sql server)

    파란색 박스테이블을 생성하는 쿼리를 넣는다.

    빨간색 박스: Build Schema로 테이블을 빌드한다. -> 빌드한다 = 만든다

     

    - 빌드된 테이블에서 쿼리연습해보기

    sql fiddle 2

    보라색 박스: 내가 연습할 쿼리를 작성한다.

    주황색 박스: 쿼리를 실행시킨다.

    초록색 박스: 결과를 확인한다.

     

    이런 식으로 쿼리를 실행시켜볼 수 있다.

     

    2. https://sqltest.net/

     

    SQL Test

    Free Online SQL Test Tool

    sqltest.net

    - 쿼리 연습해보기 -> 따로 테이블 빌드 안 해도 실행시킬 때 같이 빌드하는 것 같다.

    검은색 박스: db를 선택할 수 있다. (oracle, mysql, postgresql, sqlite, sql server)

    파란색 박스테이블을 생성하는 쿼리를 넣는다.

    보라색 박스: 내가 연습할 쿼리를 작성한다.

    주황색 박스: 쿼리를 실행시킨다.

    초록색 박스: 결과를 확인한다.

     

    이런 두 가지 툴을 이용하면 따로 설치를 하지 않아도 쿼리를 활용해볼 수 있다. 나는 개인적으로 sql fiddle을 활용하는 게 더 편해 보인다.

     

     

    4. 해커 랭크를 통해서 연습해보기

    https://www.hackerrank.com/

     

    HackerRank

    HackerRank is the market-leading technical assessment and remote interview solution for hiring developers. Learn how to hire technical talent from anywhere!

    www.hackerrank.com

     

    우리나라의 프로그래머스나 백준 코딩처럼 sql을 연습해 볼 수 있는 해커 랭크라는 곳이 있다.

    기초부터 조금 어려운 문제까지 있는데 실제로 몇몇 회사에서 채용 시에 해커 랭크를 활용하는 중이라고 한다.

     

    쿠팡에서 해커랭크로 연습하란다.

     

    이런 배움으로 조금의 노력과 변화로 내가 더욱 전문성을 갖출 수 있지 않을까 싶다. 사실 SQL을 잘한다고 해서 무조건 좋은 대우를 받는 건 아니지만 그래도 할 줄 아는 사람과 모르는 사람은 능동적으로 일할 때 확연한 차이를 보일 것이라 생각한다.

    반응형

    댓글

Designed by Tistory.