요즘, 데이터 분석은 기본기라며?
💡 10분 안에 이런 걸 알려드려요!
- SQL 기초 강의를 들었지만 응용이 어려운 분들을 위한 챗GPT 활용법
- 쿼리 짜는 게 막히거나 자꾸 오류가 날 때 쉽게 해결하는 방법
- 데이터팀에 추가로 부탁하는 대신 담당자가 빠르게 SQL을 수정하는 팁
저자 단단(제갈명)
카카오 스타일 CRM 마케터 > 프로필 더 보기
데이터 분석을 안 해본 사람은 없을 거예요. 세일즈 담당·MD라면 매출 집계를 하면서 하루를 시작할 거고요. 마케터·기획자라면 캠페인 성과 보고를 위해 매출·획득한 신규 유저·객단가 추이 등 주요 성과 지표의 변화를 측정하기 위해 데이터 분석을 하고 계실 거예요.
신규 서비스를 기획하고 상용화하는 PO(Product Owner), UX 업무 담당자도 서비스 개선 후 유저의 행동 변화를 트래킹하기 위해 데이터 분석을 합니다. 최근에는 HR, 조직문화 부서처럼 데이터와 큰 연관이 없어 보이는 직군에서도 데이터 분석을 한다고 해요. 직원을 유형별로 그룹핑해서 성과 분포 추이 분석, 업무 만족도 분석을 위해 데이터를 추출하고 가공합니다.
'데이터 분석은 데이터팀에 요청하면 되지 않나요?'라고 생각하실 수도 있습니다. 저 역시 몇 년 전까지만 해도 그렇게 생각했어요. '그 어려운 걸 이과도 아닌 문과, 심지어 문학 전공자인 내가 어떻게 배우겠어?'라며 지레 겁을 먹었어요.
하지만 사내에 데이터팀이 있더라도, 데이터의 구조나 가공 방식에 대한 이해가 부족하면 요청 내용을 명확히 정리하기 어려워요. 요청 자체가 불명확하다 보니 데이터팀에서도 관련 없는 데이터까지 모두 제공하기 쉬워, 내 상황에 유의미한 데이터가 무엇인지 뽑아내기 위해 시간이 더 듭니다. 데이터 팀에서 템플릿과 대시보드를 제공해 주더라도 변형이 필요할 경우 다시 수정을 요청해야 해서 업무 효율이 떨어지고요.
기본적인 SQL을 알아두면, 데이터팀에 보다 효과적으로 데이터 분석을 요청할 수 있고 간단한 수정 작업 정도는 스스로 할 수 있어 업무 속도가 빨라집니다. 하지만 기초 지식을 배워도 막상 실무에 적용하기는 어려운데요. 이럴 때 챗GPT를 이용하면 좋습니다.
전에는 쿼리를 작성하다가 막힐 때마다 구글에서 생각나는 함수나 연산자를 하나하나 검색하고 적용해봤는데, 챗GPT를 쓰면 상황에 맞는 함수를 알아서 찾아주고 조건에 맞춰 쿼리도 짜주고 수정해줘요. 덕분에 3시간 넘게 낑낑거릴 업무를 10분 만에 해결하기도 했습니다.
이번 아티클에서는 SQL을 쓸 때 챗GPT를 어떻게 활용할 수 있을지 말씀드립니다. 문과생도 차근차근 따라 할 수 있도록 쉽게 설명해 드릴게요!
🔍 일러두기
- SQL은 데이터를 추출·가공하는 언어입니다. MySQL, Athena 등 프로그램마다 문법이 조금씩 다른데요, 이번 아티클은 Athena 쿼리를 기준으로 작성되었습니다.
- 이 아티클은 SQL을 한 번 이상 업무에서 사용해봤거나 SQL 기초 지식이 있는 독자를 대상으로 작성되었습니다. 아직 SQL 자체가 생소하시다면 아티클 내용이 전체적으로 어렵게 느껴지실 수도 있습니다.
📌 요약
[문과 출신 마케터가 SQL을 배운 이유]
- 데이터 분석은 직무와 관계없이 업무 성과를 예측·분석하기 위해 꼭 필요한 과정이다.
- 데이터 구조와 문법을 알고 나면 더 효율적으로 데이터 분석 요청을 할 수 있다.
- SQL을 다룰 줄 알면 데이터팀에 요청하고 기다릴 필요 없이 필요한 데이터를 빠르게 추출하고 가공할 수 있다.
[챗GPT로 SQL을 배우면 좋은 이유]
- SQL은 질문과 조건이 명확하고 답이 정해져 있어서 챗GPT가 정확하게 답할 수 있다.
- 챗GPT는 대화형 검색 시스템이므로 무엇이 오류인지, 어떻게 수정해야 하는지 질문에 맞게 궁금증을 해소해준다.
- 데이터 상세 조건을 제시하면 알아서 SQL 쿼리를 생성해준다. SQL에 대한 기본 지식만 있어도 쿼리 작성이 가능해진다.
기초편 - SQL 쿼리 함께 짜기
이제 챗GPT에게 SQL 과외를 받아볼 건데요. 예시에 대한 이해를 돕기 위해 샘플 데이터를 준비했어요.
간단한 상품 주문 데이터 테이블 하나를 만들어봤어요. 데이터는 이렇게 표 형태로 데이터베이스에 쌓이는데요. 이러한 데이터 표를 [테이블]이라고 합니다. 테이블 안에는 데이터 항목별로 데이터가 들어 있고요.
[열]에 표시된 데이터 항목을 [컬럼column]이라고 하고 [행]에 표시된 데이터 내용은 [로우row] 라고 합니다. 위의 테이블은 총 9개 컬럼을 기준으로 14개 로우의 데이터가 적재되어 있어요.
CASE 1. SQL로 혼자서 쿼리 짜기
위의 테이블을 가지고 주문 일자별 주문금액을 구하는 SQL을 짜볼까요? 챗GPT에게 물어보겠습니다.
자, 이렇게 SQL을 작성하지 않고 조건을 명시하는 것만으로도 SQL 쿼리를 완성할 수 있습니다. 물론 챗GPT에게 필요한 정보를 정확하고 상세하게 알려줘야 해요.
- 어떤 SQL 언어로 작성할 것인지
- 테이블이 어떻게 생겼는지(=어떤 컬럼이 있는지)
- 원하는 데이터가 무엇인지
제가 입력한 질문을 다시 볼까요?
- 어떤 SQL 언어로 작성할 것인지 → Athena
- 테이블이 어떻게 생겼는지 → 9개의 컬럼명 명시
- 원하는 데이터가 무엇인지 → order_date별 order_amount 합계