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

Python과 MySQL로 MIN(), MAX() 함수 사용법 완벽 정리

MySQL의 MIN()MAX() 함수는 테이블 컬럼에 대해 집계 연산을 수행하는 대표적인 함수입니다.

MIN() 함수는 이름 그대로 선택한 컬럼에서 가장 작은 값을 찾아 반환합니다. 반면 MAX() 함수는 같은 컬럼에서 가장 큰 값을 찾아 반환하는 역할을 합니다. 이 두 함수는 숫자형 데이터뿐만 아니라 날짜, 문자열 데이터에도 적용할 수 있어 다양한 상황에서 유용하게 활용됩니다.

기본 문법

MIN()

SELECT MIN(column_name) FROM table_name

MAX()

SELECT MAX(column_name) FROM table_name

Python에서 MySQL로 최솟값·최댓값 조회하는 절차

Python에서 MySQL 커넥터를 사용해 테이블 컬럼의 최솟값과 최댓값을 구하려면 다음 단계를 따릅니다.

  • mysql.connector 모듈 임포트

  • connect() 메서드로 데이터베이스 연결 설정

  • cursor() 메서드로 커서 객체 생성

  • 적절한 SQL 문으로 쿼리 작성

  • execute() 메서드로 SQL 쿼리 실행

  • 작업 완료 후 연결 종료

예제 시나리오

학생의 이름과 점수가 담긴 "Students" 테이블이 있다고 가정해 보겠습니다. 여기서 학생들 중 최저 점수와 최고 점수를 구하고 싶다면 MIN()과 MAX() 함수를 활용하면 됩니다. Marks 컬럼에 MIN() 함수를 적용하면 최저 점수가, MAX() 함수를 적용하면 최고 점수가 반환됩니다.

Students 테이블

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

위 테이블에서 최저 점수와 최고 점수를 조회하는 코드를 살펴보겠습니다.

예제 코드

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

cursor=db.cursor()

query1="SELECT MIN(marks) FROM Students "
cursor.execute(query1)
lowest=cursor.fetchall()
print("Lowest marks :",lowest)

query2="SELECT MAX(marks) FROM Students "
cursor.execute(query2)
highest=cursor.fetchall()
print("Highest marks :",highest)

db.close()

실행 결과

Lowest marks : 49
Highest marks : 99

실행 결과를 보면 MIN() 함수가 Khushi의 최저 점수인 49를, MAX() 함수가 Inder의 최고 점수인 99를 정확히 반환한 것을 확인할 수 있습니다. 이처럼 MIN()과 MAX() 함수를 사용하면 복잡한 로직 없이 간단한 쿼리 한 줄로 원하는 집계 결과를 손쉽게 얻을 수 있습니다.