ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [성동5기 전Z전능 데이터분석가] 코멘토 청년취업사관학교 데이터 분석가 DAY20
    [성동5기] 전Z전능 데이터분석가 과정 2026. 1. 13. 18:01

    💭 Daily Reflection(오늘의 하루)

    #중간평가 #정성평가 #AI+SQL

     

    📚 Today's Learning

     

    오늘은 중간평가 Day...!

    어제 지금까지 배웠던 강의 자료 다시 복습하고 블로그 정독했습니다ㅎㅎ

     

    팀원분께서 GPT 돌려서 얻은 기출문제 뽑아주신게 넘넘 도움이 되었어요!! 헤헤

    최고최고~!

    (후기): 2개 틀린 것 같당!! 따흡 아쉬워라

     

    01.
    AI + SQL

     

    CREATE 사용해서 데이터를 불러온 뒤 새로고침 F5를 눌러줍니다!

     

     

    가져온 데이터는 상단에 데이터소스랑 데이터베이스 위치 잘 확인하신 후 왼쪽 3번째 실행 버튼 눌러주면 끝!!

    짜잔 SELECT * FROM [테이블] 구문을 통해서 가져온 데이터가 잘 나와있는지 확인해주시면 됩니당~!

     

     

     

    1단계. Contect Setting

     

    - AI에게 상황을 설명하고 역할을 부여
    - 컨텍스트 세팅 이후에는 짧은 프롬프트도 효과적
    [프롬프트]
    “너는 Northwind Traders라는 가상의 회사의 데이터 분석가야.
    아래 회사 정보와 데이터베이스 정보를 참고해서 앞으로 모든 대화에 적용해줘. 이 회사의 데이터 분석과 관련된 모든 대화에서 이 정보를 기억해주길 바라.” 

    [회사정보]
    업종: B2B 식품유통
    주요제품: 음료, 육류, 해산물, 유제품, 과일, 곡물
    주고객: 레스토랑, 슈퍼마켓, 식자재유통업체
    고민: 매출성장둔화, 이익극대화 필요

    [데이터베이스정보]
    DBMS: MySQL
    주요테이블:
    Customers (고객ID, 회사명, 국가, 도시)
    Orders (주문ID, 고객ID, 주문일자, 직원ID)
    OrderDetails(주문ID, 상품ID, 수량, 단가)
    Products (상품ID, 상품명, 카테고리ID, 단가)
    Categories (카테고리ID, 카테고리명)
    Employees (직원ID, 이름, 직책)
    Shippers (배송사ID, 배송사명)
    데이터기간: 1996~1998년

     

    2단계. 비즈니스 이해 & 문제 재정의

     

    목표
    모호한 “이익극대화”라는 말을 분석 가능한 문제로 바꾼다 / 경영진의 요구를 구체화한다
    프롬프트 분석
    1) 명확한 맥락 제공 → 회사이름과 업종 명시
    2) 목적 중심 → “이익극대화”라는 추상적 문제를 쪼갤 수 있게 유도
    3) 아이디어를 폭넓게 확보 → 10가지 관점 요청
    4) 도메인 반영 → 업종(B2B 식품유통)을 알려주어 실무적 답변 유도
       - 도메인 지식이 부족할 경우 Ai가 정리해준 관점을 우선순위로 정리
    [프롬프트]
    “경영진이 ‘이익을 극대화하라’고 지시했을 때, 어떤 비즈니스 분석 관점으로 이 문제를 쪼갤 수 있을지 10가지 관점을 제안해줘.
    Northwind Traders 회사의 B2B 식품 유통 비즈니스라는 점을 고려해.”

    추가로 너가 준 것들 중에서  중요한 우선순위를 뽑아줘.

     

     

    3단계. 분석 과제를 구체적인 계획으로 바꾸기

     

    - 누락된 단계 없는지 확인하기
    - 프로세스에서 추가해야 할 부분이 없는지 확인하기
    - 데이터에 맞게 계획한 것인지 확인하기
    [프롬프트]
    “아래 분석 관점을 실현하려고 할 때, 데이터분석가 입장에서 어떤 작업들을 순서대로 하게 될지 가능한한 구체적으로 설명해줘. 필요한 데이터, 분석 방법, 최종 산출물 아이디어까지 포함해서 알려줘. Northwind Traders 회사의 B2B 식품 유통이라는 업종을 고려해." 
    참고로 고객 수익성 관점을 진행할거야.

    1단계 시작하기 전에 내가 줘야할 데이터가 있을까? 그 데이터를 얻기 위한 코드도 줘.

    (SQL에서 DESCRIBE 활용해서 하단 데이터 복사+붙여넣기로 GPT에 넣어줌)

     

     

    4단계. AI가 계획해준 과정을 따라가기

     

    -  AI가 말한 것을 검증하고 질문하기
    - 모호한 Step은 구체적인 질문으로 쪼개기
    - 대화하면서 내 프로젝트 설계를 완성하기
    - AI가 기획해준 과정을 따라가며 검토하기
    [프롬프트]
    “좋아. 그러면 이제 고객 수익성 분석을 1단계부터 차근차근 진행해보자. 먼저1단계 ‘분석 목적 정리’부터 다시 정리해줄래? 그리고 바로 다음단계로 넘어갈 준비도 해줘.


    (예시 1) 
    데이터 파악(Data Exploration)

    “아래는 Northwind DB의 테이블 목록이다: Customers, Orders, OrderDetails, Products, Categories, Employees, Shippers 이 테이블들의 관계를 ERD로 설명해줘. 각 테이블이 어떤 정보를 담고 있고, 주요 컬럼은 무엇인지도 함께 알려줘.”


    (예시 2) 
    분석 관점 탐색(Hypothesis Generation)

    “Northwind Traders의 이익 극대화를 위해 데이터 기반으로 분석할 수 있는 가설이나 분석 아이디어를 10가지 제안해줘. 특히 고객분석, 제품 분석, 매출분석, 비용분석 등 각 분야별로 골고루 제시해줘.”


    (예시 3) 
    분석 설계 (Query Design)

    “아래 분석 아이디어를 실현하기 위해 어떤 테이블을 JOIN 해야 하고, 어떤 컬럼이 필요한지 알려줘.


    (예시 4) 
    SQL 쿼리 작성

    “아래요구 사항에 맞는 MySQL 쿼리를 작성해줘. 


    (예시 5) 
    Insight 도출

    “아래 SQL 분석 결과를 바탕으로 경영진에게 보고할 Insight 문장을 3가지 써줘.


    (예시 6) 
    발표 자료 작성

    “아래 Insight 내용을 바탕으로 PowerPoint 슬라이드용 발표 문구를 작성해줘."
     
    ##2단계: 수익 포트폴리오 요약
    SELECT
    sub.category,
    sub.sku_count,
    ROUND(sub.net_revenue, 2) AS net_revenue,
    ROUND(sub.gross_profit, 2) AS gross_profit,
    ROUND(sub.margin_pct, 2) AS margin_pct,
    CASE
    WHEN sub.margin_pct >= 25 AND sub.revenue_share >= 10 THEN 'Core'
    WHEN sub.margin_pct >= 25 AND sub.revenue_share < 10 THEN 'Alpha'
    WHEN sub.margin_pct < 25 AND sub.revenue_share >= 10 THEN 'Scale'
    ELSE 'Exit'
    END AS segment
    FROM (
    SELECT
    p.category,
    COUNT(DISTINCT p.id) AS sku_count,
    SUM(od.quantity * od.unit_price * (1 - od.discount)) AS net_revenue,
    SUM((od.quantity * od.unit_price * (1 - od.discount)) - (od.quantity * p.standard_cost)) AS gross_profit,
    (SUM((od.quantity * od.unit_price * (1 - od.discount)) - (od.quantity * p.standard_cost)) /
    SUM(od.quantity * od.unit_price * (1 - od.discount))) * 100 AS margin_pct,
    (SUM(od.quantity * od.unit_price * (1 - od.discount)) /
    (SELECT SUM(quantity * unit_price * (1 - discount)) FROM order_details)) * 100 AS revenue_share
    FROM products p
    INNER JOIN order_details od ON p.id = od.product_id
    GROUP BY p.category
    ) AS sub
    ORDER BY margin_pct DESC;


     

    최종적으로 PPT까지 만들어봤어요ㅎㅎ

     

     

     

    😊 오늘의 마무리 멘트:

    오늘 정성평가+정량평가까지 모두 진행 완료하였습니다! 

    시간이 참 빨리 지나가는 것 같아요ㅎㅎ 다음주부터 진행할 SQL 프로젝트도 잘 마무리해서 좋은 포트폴리오를 제작하고 싶어요!

    그리고 내일은 디자인 스프린트 팀원분들과 첫 스터디를 하기로 했습니다 두근두근

    다같이 SQLD 자격증 따서 취뽀까지 가보쟈구욧~~

     

Designed by Tistory.