⏳ Time Log/1. One Day (Daily · TIL)

Day 44 (12/18) - 개발 일지: 프로젝트 고도화 및 MySQL 집계 쿼리

this.Serena 2026. 2. 23. 02:40

📅 2025-12-18 개발 일지: 프로젝트 고도화 및 MySQL 집계 쿼리

핵심 요약: 개인 프로젝트 'Creative Archive' 개발 몰입 및 MySQL GROUP BY, HAVING 절을 활용한 데이터 필터링 실무 학습

 


1. 개인 프로젝트: Creative Archive 개발 (오전)

  • 집중 작업 시간: 오전 9시부터 프로젝트 핵심 로직 구현 및 UI 최적화 진행
  • 주요 검토 사항: * 리액트 컴포넌트 간 상태 전달 및 Redux Toolkit 스토어 연동 상태 점검
    • 상세 페이지 이미지 갤러리 렌더링 성능 최적화 및 레이아웃 수정

2. MySQL: 데이터 집계 및 조건 필터링 (오후)

  • 학습 주제: 특정 기준에 따른 그룹화와 집계 결과에 대한 조건 설정
  • 핵심 문법 정리:
    • GROUP BY: 테이블의 레코드를 특정 컬럼 기준으로 그룹화하여 통계치 산출
    • HAVING: 그룹화된 결과 중에서 특정 조건(예: 합계, 평균 등)을 만족하는 그룹만 추출
  • 쿼리 실무 적용 및 교정:
    • 사용자 메모 분석: 특정 금액(10만) 이상의 총 주문량을 가진 고객 조회 로직
    • 올바른 SQL 구조 예시: ```sql SELECT customer_id, SUM(order_total) AS total FROM orders GROUP BY customer_id HAVING total > 100000
    • 주의 사항: WHERE 절은 그룹화 전 개별 데이터를 필터링하고, HAVING 절은 그룹화 후 집계된 결과를 필터링한다는 차이점 숙지

🗂️ 핵심 개념 요약

  • 데이터베이스 집계: COUNT, SUM, AVG 등 집계 함수와 GROUP BY의 조합으로 데이터 통계 도출
  • SQL 실행 순서: FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY 순으로 쿼리가 실행됨을 이해
  • 프로젝트 관리: 발표일(12-22) 전까지 기능 완성도를 높이기 위한 점진적 버그 수정 및 리팩토링 진행