633

AI 시대를 맞아 데이터가 모든 비즈니스의 핵심 동력이 된 것은 물론, 데이터 양 또한 기하급수적으로 늘고 있습니다. 따라서 데이터와의 대화 언어인 SQL의 중요성은 계속 커져가고 있습니다. 관계형 데이터베이스와 SQL은 여전히 전 세계 데이터 저장소의 근간을 이루고 있기 때문이죠.

이때, 특히 SQL 작성에 AI(챗GPT)를 활용해 생산성을 ‘폭발’시킬 수 있는 분들이 있는데요. 책『시대에듀 유선배 SQLD 합격노트』, 유튜브 채널 <SQL전문가 정미나> 등으로 많은 수강생의 SQL 공부를 도운 정미나 저자는 특히 이 세 직군의 사람들에게 큰 도움이 될 것이라 이야기 합니다.
① SQL 기본 문법은 배웠지만 실무 활용에는 서툰 주니어 개발자
② 직접 데이터를 추출하고 가공하는 SQL 활용 능력을 요구받는 마케터, PM, PO
③ 느린 쿼리와 매일 씨름하며 생산성 향상을 바라는 모든 데이터 관련 직군
누구나 쉽게 접근 가능한 챗GPT를 제대로 활용한다면, 두려움 없이 데이터를 다룰 수 있게 될 것입니다.

요즘 업무에서 사용하는 생성형 AI는 챗GPT 뿐 아니라 제미나이, 퍼플렉시티, 코파일럿 등 저마다 뛰어난 성능을 가진 다양한 툴이 있는데요. 그 중에서도 SQL에 AI를 접목하고자 할때는 챗GPT를 추천합니다.
첫째, 학습의 효율을 극대화하기 위함입니다. 챗GPT는 복잡한 SQL 문법의 초안을 빠르게 생성하고 다양한 상황에 대한 예제를 즉각적으로 제공하며, 마치 개인 튜터처럼 어려운 개념을 쉽게 설명해줍니다. 둘째, 실제 업무 생산성 향상을 위해서입니다. 비즈니스 요구사항을 자연어로 설명하여 쿼리 초안을 얻을 수 있고, 튜닝을 위한 다양한 접근 방식을 제안받을 수 있습니다.
핵심은 챗GPT가 SQL 지식을 대체하는 것이 아니라 여러분의 SQL 능력을 가속화하는 도구라는 것입니다. AI 시대에는 내가 무엇을 할 수 있는 지를 아는 것만큼이나 AI에게 무엇을 질문해야 효율적인 답변을 얻을 수 있는 지를 아는 것 또한 중요합니다. 이 책은 바로 그 질문의 기술, 즉 프롬프트 엔지니어링부터 시작하여 SQL의 실전 활용까지 전 과정을 담고 있습니다.
챗GPT 같은 인공지능 모델은 사용자의 입력(프롬프트)을 바탕으로 다음에 이어질 텍스트를 예측하여 응답을 생성하기 때문에 프롬프트가 어떻게 구성되는가에 따라 아웃풋의 품질, 방향성, 정확도가 극적으로 달라질 수 있습니다. SQL을 효과적으로 작성하기 위한 프롬프트 엔지니어링의 핵심은 다음과 같습니다.
① 정확한 목표 설정: 무엇을 원하는지 명확히 정의한다.
② 구체적인 조건 제시: 대상 언어, DBMS, 출력 형식 등을 명확히 전달한다.
③ 모델 행동 통제: “예시를 보여줘”, “단계별로 설명해줘”, “SQL만 출력해” 등 응답 스타일을 제어한다.
지금부터 AI에게 SQL을 요청할 때 어떤 질문이 좋은 질문이고 어떤 질문이 오해를 불러일으키는지 구체적인 예시와 함께 알아보도록 합시다.
고객별 매출 쿼리 좀 만들어줘.
이 질문은 겉보기에는 간단해 보이지만, 핵심 정보가 빠져 있습니다. 이때 AI는 누락된 정보를 스스로 추측해야 하는데, 그 결과 부정확하고 추상적인 쿼리가 생성될 가능성이 높습니다. 어느 정보가 누락되었는지 살펴보겠습니다.

결국 이런 질문은 AI가 추측 기반으로 쿼리를 작성하게 만들며 사용자는 그 결과를 다시 수정, 검토해야 하는 번거로움을 겪게 됩니다. 반면, 좋은 질문은 다음의 4가지 요소를 포함하고 있습니다.
✅ 나쁜 질문을 좋은 질문으로 바꾸는 방법
그렇다면 나쁜 질문들을 어떻게 좋은 질문으로 바꿀까요? 위에서 설명한 ‘좋은 질문을 위한 4가지 요소’를 포함한 구체적인 예시로 좀 더 명확하게 이해해봅시다.
→ ‘최근’의 기준이 불명확하고, 대상 테이블 정보가 없음.
→ (수정) “ORDERS 테이블에서 30일간의 일별 매출 합계를 보여줘(PostgreSQL 기준)” [ORDERS 테이블 칼럼 정보 제공]
→ 분석 기준, 조건, 지표가 없음.
→ (수정) “CUSTOMERS 테이블에서 2025년 기준 연령대별 고객 수를 집계해줘. 연령대는 10 단위로 구분해줘.” [CUSTOMERS 테이블 칼럼 정보 제공]
→ 어떤 문제가 있는지 설명하지 않음.
→ (수정) “아래 쿼리가 에러가 나는데 이유를 분석해줘. Oracle 기준이고 오류 내용은 다음과 같아….”
→ 컨텍스트 부족으로 불안정한 결과 발생.
→ (수정) “쿼리만 출력해줘. 설명 없이 Oracle 기준 SQL만 주면 돼.”
예시를 보니 더 명확해지셨죠? 이렇듯 프롬프트, 즉 요구사항이 구체적이고 정확할수록 쿼리의 품질도 쭉쭉 상승합니다. 그리고 테이블 구조를 공유할 때에는 가능하면 해당 테이블의 DDL 스크립트를 공유하는 것이 가장 정확합니다. 이러한 프롬프트 구조는 챗GPT에게 정확한 입력을 제공해 실무에 바로 적용할 수 있는 SQL 결과를 받을 확률을 높여줍니다.
다음은 실제 같은 의도를 가지고서 챗GPT에게 각각 다른 질문을 했을 경우의 예시입니다.

답변으로 제시한 쿼리가 나쁘지는 않지만 실제로 돌려보면 해당 테이블이 없다는 에러가 발생하게 됩니다.

AI에게 구체적이고 자세하게 요청해서 얻은 쿼리입니다. 이를 그대로 복사해서 붙여넣기한 뒤 실행해보면 원하는 데이터가 출력되는 것을 확인할 수 있을 것입니다.
위 콘텐츠는 『퀵스타트 SQL with 챗GPT』에서 발췌하여 재구성한 내용입니다.
AI가 단순히 질문에 답변만 하는 도구로 쓰이던 시기는 이미 지났습니다. 이제 우리는 패턴화된 활용 방식을 정립함으로써, AI를 활용하여 SQL 작성·튜닝·리팩터링까지 전 과정에 걸쳐 생산성을 극대화할 수 있게 되었죠. 챗GPT를 제대로 쓰는 사람과 그렇지 않은 사람의 차이는 어떤 상황에서 어떤 패턴으로 활용하는가에 달려 있습니다.
『퀵스타트 SQL with 챗GPT』는 여러 실무 환경에서 맞이할 수 있는 데이터 문제들을 AI를 통해 해결할 수 있도록 안내합니다. 기본적인 SQL 작성 시간을 줄여주는 것은 물론, 가장 효과적이고 빠른 튜닝 방법을 안내받는 방법, 대량의 데이터를 관리하는 방법 등 데이터를 직·간접적으로 다루는 모든 이에게 꼭 필요한 내용이 담겨 있습니다.
책의 여정을 통해 데이터의 가치를 최대한으로 끌어내는 ‘AI 기반 SQL 전문가’가 되고 싶으시다면 아래 챌린지에 참여해 보시기 바랍니다.

댓글