ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 마케터의 sql 실무활용기 : sql 공부 많이 해야 하나요?
    배움의 고통 2022. 9. 25. 00:29

     

    요즘은 비개발부서도 sql을 활용하는 경우가 많습니다. 제가 다니는 회사도 필요하다면 마케팅팀 뿐만 아니라 모든 직원이 db접근권한을 받을 수 있어요. 개발지식 제로라 해도 sql을 알아두는 것이 좋습니다. 데이터부서에 데이터 추출 요청하면서 이런 경우 있으셨을 겁니다.

     

     

    마케터 : (1개월동안 접속안한 고객한테 광고문자 보내고 싶은데...리스트 뽑아달라고 해야겠다.)
    마케터 : 지난 한달동안 미방문자 중에 광고성정보 문자 수신동의한 고객들 이름과 핸드폰번호 리스트 부탁 드려요.
    데이터부서 : 네 근데 하루정도 걸려요. 지금 다른 업무가 있어서요.
    마케터 : 넵

    ~하루 뒤~

    리스트를 받아 열어 본 마케터 : (5만명이 넘는다....! 이 사람들에게 문자를 다 보내자니 돈이.... ㄷㄷㄷ)
    마케터 : 저...어제 뽑아주신 고객분들 결제금액이랑 가장 마지막 방문일자도 같이 뽑아주실 수 있으실까요?
    데이터부서 : 네 근데 급한건가요? 바로는 힘들 것 같은데...

     

     

     

    급하지 않은 데이터라면 괜찮겠지만 당장 필요한 경우 데이터부서를 통해 확인하려면 시간이 걸립니다. 또, 내가 원하는 정보와 실제 추출했을 때의 결과가 다른 경우...혹은 추가로 더 봐야하는 경우 데이터부서에 다시 요청하기도 껄끄러울 수 있고요. 또, 바로바로 확인하지 않으면 데이터의 신선도가 떨어지기도 합니다. 수신동의값 같은 경우는 고객이 데이터를 추출 요청하고 기다리는 사이에 동의에서 거부로 변경하는 일도 종종 발생하거든요. (저의 실제 경험담입니다....문자 발송하려고 추출요청하는 사이에 고객이 거부로 돌려놨는데 그대로 문자 발송해버려서 스팸문자 보내지말라고..ㅠㅠ) 

     

    그래서!

    마케터라면 고난이도의 sql지식이 없어도 되니 가능하면 꼭! sql 기본 구문에 대해 알아두시면 좋겠습니다. 

    아래는 제가 실제로 실무에 사용하고 있는 방법을 알려 드립니다. 

     

     

     


     

     

    1. db관리툴을 설치하세요.

    대부분이 mysql workbench를 이용하는데요. 이건 mysql 일때에만 사용 가능하므로, 회사의 db를 확인하고 툴을 설치해야 합니다. 저는 디비버(dbeaver)를 사용하고 있습니다. 이름 너무 귀엽지 않나요ㅋㅋㅋ무료 툴이고 사용하기도 쉽습니다. 

    https://dbeaver.io/

     

    DBeaver Community | Free Universal Database Tool

    DBeaver Universal Database Tool Free multi-platform database tool for developers, database administrators, analysts and all people who need to work with databases. Supports all popular databases: MySQL, PostgreSQL, SQLite, Oracle, DB2, SQL Server, Sybase,

    dbeaver.io

     

     

     

     

    2.회사에서 사용하는 db와 접속권한을 받으세요. 

    데이터를 관리하는 부서에게 db와 접속권한을 요청하면 아마 host, post, id, password 등 어쩌구저쩌구를 줄겁니다. 이 때 당황하지 마세요! 침착하게 감사합니다^^ 하고 디비버를 실행합니다. 디비버 첫 화면에서 사용하는 db를 선택합니다. 

     

     

     

     

    그리고 나면 접속 환경 셋팅화면이 나오는데요. 아까 데이터부서에서 주었던 내용들을 여기에 입력합니다. 그리고 test connection 을 클릭해 제대로 연결되는지 확인한 후, 완료버튼을 눌러 셋팅을 진행합니다. 

     

     

     

     

    3.select, where, join 등만 알아도 충분합니다

    제가 sql을 사용하는 이유는 필요할 때 바로바로 데이터를 보기 위함입니다. 그렇기 때문에 쿼리를 얼마나 잘 짜느냐는 그렇게 중요하지 않다고 생각해요. 가장 기본인 [select * from 0000] 만 알아도 충분하다고 봐요. 쿼리문 오류로 구글링할 시간에 일단 필요한 데이터가 담긴 테이블을 로우로 내려서 엑셀 vlookup, sumifs, countifs 등 수식걸어 보는 게 훨씬 빠릅니다. 이럴거면 왜 sql을 하는거냐! 라고 생각하는 분도 있겠지만, 저는 개발부서에게 요청하지 않고 제가 원할 때 데이터를 확인하기 위해 쿼리를 직접 날리는 것이기 때문에 이 방법이 훨씬 편합니다. sql을 사용하고 있으니 내가 보고 싶은걸 무조건 쿼리문으로 써야겠다 라는 강박은 갖지 않아도 됩니다. 저는 한 개의 스크립트에 자주 사용하는 쿼리문들을 써놓고 필요할 때마다 사용합니다. 각각의 쿼리문 앞에 //로 주석처리해 어떤 걸 조회하는 쿼리인지 쓰면 편해요. 마치 양념통에 라벨링하는 것처럼요. 

     

     

     

     

    그런데 여기서 유의할 점이 있습니다! 좀 더 정확한 값을 보려면 데이터부서에 꼭 확인해야할 것이 있습니다. 바로 where문에 넣어야 하는 조건들입니다! 예를 들면, 

     

    주문완료한 고객 리스트를 조회한다 가정했을 때 단순히 

    select * from orderlist; 

    로 조회하면 노이즈가 낄 확률이 높습니다. 주문완료는 주문완료긴한데 환불처리했거나, 배송중이거나, 품절취소 했거나 등등...내가 필요한 주문완료 데이터값이 아닐 수 있어요. 그렇기 때문에 찐으로 주문이 성공적으로 완료한 데이터만을 추출하기 위한 추가적인 조건을 확인해 봐야 합니다. 

     

    select * from orderlist

    where order_seccess='y';

     

    꼭 데이터 부서를 통해 필수조건에 대해 확인한 뒤 쿼리를 날려보시기 바랍니다. 

     

     

     

     

    사실 실무에서 쿼리를 써먹어볼 일이 없었던 때에는 막연히 sql을 공부해야겠다! sqld자격증을 따야겠다! 라는 생각이 컸습니다. 아마 sql 각잡고 공부 시작해본 분들이라면 아시겠지만 대부분의 책들이 가장 먼저 DDL DCL DML 등등 이론부터 설명해 줍니다. 솔직히 저 저거 아직도 헷갈려요.....ㅎ.. 간장공장콩장장 같습니다ㅠ 실무에선 몰라도 되는 영역입니다. 그저 우리는 당장 "어제 주문한 고객이 몇명인가"만 볼 수 있으면 ok입니다. 어렵지 않으니 꼭! 기본 쿼리문 정도만 알아두세요. 

     

    예전에도 추천했었지만 이 책에서 설명해주는 기초만 알아도 마케터가 원하는 데이터들은 웬만하면 다 조회해 볼 수 있습니다. (광고아닙니다! 내돈내산이며, 이 책의 저자와 아무아무아무 관련 없음!!!)

     

    http://www.kyobobook.co.kr/product/detailViewKor.laf?mallGb=KOR&ejkGb=KOR&barcode=9791195247905 

     

    칼퇴족 김대리는 알고 나만 모르는 SQL: 기초편 - 교보문고

    “SQL은 생각보다 쉽다”SQL은 일정 공간에 저장된 데이터를 분석 및 해석하는 데 사용하는 언어입니다. 쉽게 말하면 환율, 주가, 이자율 등과 같은 시장 데이터, 금융거래 데이터, 인터넷상의 검

    www.kyobobook.co.kr

     

     

     

     

    댓글

contact me : roundheng@gmail.com