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()과 같은 다른 집계 함수들과 함께 익혀두면 파이썬 기반 데이터 분석 작업의 효율을 크게 높일 수 있습니다.