Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬으로 MySQL AVG() 함수 활용하기 – 테이블 평균값 구하는 방법

AVG() 함수는 MySQL의 대표적인 집계 함수 중 하나로, 테이블 내 숫자형 컬럼에 저장된 값들의 평균값을 계산하여 반환합니다. 이름 그대로 'Average(평균)'를 의미하며, 학생 성적 평균, 판매 금액 평균 등 다양한 데이터 분석 작업에 폭넓게 활용됩니다.

기본 문법

SELECT AVG(column_name) FROM table_name

파이썬에서 AVG() 함수를 사용하는 절차

파이썬과 MySQL을 연동하여 AVG() 함수를 사용하려면 아래 순서대로 진행합니다.

  • mysql.connector 모듈 임포트 – 파이썬과 MySQL을 연결하기 위한 드라이버를 불러옵니다.

  • connect()로 데이터베이스 연결 설정 – 호스트, 사용자명, 비밀번호, 데이터베이스 이름을 지정해 연결합니다.

  • cursor() 메서드로 커서 객체 생성 – SQL 쿼리를 실행할 수 있는 커서를 만듭니다.

  • SQL 쿼리 작성 – AVG() 함수를 포함한 SELECT 문을 문자열 형태로 준비합니다.

  • execute() 메서드로 쿼리 실행 – 준비된 쿼리를 데이터베이스에 전달하여 실행합니다.

  • 연결 종료 – 작업이 끝나면 close() 메서드로 연결을 닫아 리소스를 해제합니다.

예시 테이블

다음과 같은 "Students"(학생) 테이블이 있다고 가정해 보겠습니다.

Students

+----------+-----------+
| name     | marks     |
+----------+-----------+
|    Rohit |    62     |
|    Rahul |    75     |
|    Inder |    99     |
|   Khushi |    49     |
|    Karan |    92     |
+----------+-----------+

이 테이블에서 우리가 구하고자 하는 것은 학생들의 평균 점수(marks)입니다.

전체 예제 코드

import mysql.connector

db = mysql.connector.connect(
    host="your host",
    user="your username",
    password="your password",
    database="database_name"
)
cursor = db.cursor()

query1 = "SELECT AVG(marks) FROM Students"
cursor.execute(query1)
avg = cursor.fetchall()
print("Average marks :", avg)

db.close()

코드 설명

  • mysql.connector.connect()를 통해 데이터베이스와 연결을 설정합니다.

  • "SELECT AVG(marks) FROM Students" 쿼리로 marks 컬럼 전체의 평균값을 조회합니다.

  • fetchall() 메서드로 실행 결과를 가져와 화면에 출력합니다.

  • 모든 작업이 끝난 후에는 반드시 db.close()로 연결을 닫아야 합니다.

실행 결과

Average marks : 75.4

위 결과에서 확인할 수 있듯이, 5명의 학생 점수(62 + 75 + 99 + 49 + 92 = 377)를 인원수 5로 나눈 평균값인 75.4가 정상적으로 출력됩니다.

마무리

이처럼 AVG() 함수는 복잡한 계산 로직 없이 한 줄의 SQL 쿼리만으로 숫자 데이터의 평균을 손쉽게 구할 수 있는 강력한 도구입니다. SUM(), COUNT(), MAX(), MIN()과 같은 다른 집계 함수들과 함께 익혀두면 파이썬 기반 데이터 분석 작업의 효율을 크게 높일 수 있습니다.