[python] PyMySQL을 이용하여 데이터베이스의 레코드를 그룹화하여 통계를 내는 방법을 알아본다.

이번 글에서는 Python에서 MySQL을 사용하는 PyMySQL 라이브러리를 이용하여 데이터베이스의 레코드를 그룹화하여 통계를 내는 방법을 알아보겠습니다. 데이터베이스에서 그룹화된 통계를 추출하는 것은 데이터 분석 작업에 있어 매우 중요합니다.

PyMySQL 설치하기

가장 먼저, PyMySQL 라이브러리를 설치해야 합니다. 아래의 명령어를 사용하여 설치할 수 있습니다.

pip install PyMySQL

데이터베이스 연결

PyMySQL을 사용하여 데이터베이스에 연결하는 방법은 다음과 같습니다.

import pymysql

# 데이터베이스 연결 정보 설정
host = 'localhost'
user = 'username'
password = 'password'
database = 'database_name'

# 데이터베이스 연결
conn = pymysql.connect(host, user, password, database)

# 커서 생성
cursor = conn.cursor()

위 코드에서 host, user, password, database 변수들을 실제 데이터베이스에 맞게 설정해주어야 합니다.

데이터 그룹화하여 통계 내기

그룹화된 통계를 내기 위해서는 SQL의 GROUP BY 구문을 사용해야 합니다. GROUP BY 구문을 사용하여 데이터를 그룹화하고 통계 연산을 적용할 수 있습니다. 아래는 예시입니다.

# 데이터 그룹화 및 통계 내기
query = "SELECT category, COUNT(*) FROM table_name GROUP BY category"

# 쿼리 실행
cursor.execute(query)

# 결과 가져오기
results = cursor.fetchall()

# 결과 출력
for row in results:
    category = row[0]
    count = row[1]
    print("Category: {}, Count: {}".format(category, count))

위 코드에서 table_name은 실제 테이블 이름으로 대체해주어야 합니다. category는 그룹화할 컬럼의 이름입니다.

데이터베이스 연결 종료

# 데이터베이스 연결 종료
cursor.close()
conn.close()

통계를 내기 위해 데이터베이스에 연결한 후 모든 작업이 끝나면 반드시 데이터베이스 연결을 종료해주어야 합니다.

결론

이번 글에서는 PyMySQL을 사용하여 데이터베이스의 레코드를 그룹화하여 통계를 내는 방법을 알아보았습니다. 데이터베이스 연결, 데이터 그룹화, 통계 내기 등의 과정을 소개했습니다. 이를 기반으로 원하는 통계를 추출하여 데이터 분석 작업에 활용할 수 있을 것입니다.