[python] Psycopg2를 사용하여 데이터베이스 테이블에서 특정 필드의 데이터를 분할하는 방법은?

Psycopg2는 Python에서 PostgreSQL 데이터베이스에 연결 및 상호 작용하기 위한 강력한 라이브러리입니다. 데이터베이스 테이블에서 특정 필드의 데이터를 분할하는 방법을 알아보겠습니다.

데이터베이스 연결

먼저, Psycopg2를 사용하여 PostgreSQL 데이터베이스에 연결해야 합니다. 아래 코드를 사용하여 데이터베이스에 연결해보세요.

import psycopg2

# 데이터베이스 연결 설정
conn = psycopg2.connect(
    dbname="your_database_name",
    user="your_username",
    password="your_password",
    host="your_host",
    port="your_port"
)

데이터 가져오기

연결이 성공적으로 이루어지면, 데이터베이스에서 특정 필드의 데이터를 가져올 준비가 됩니다. 예를 들어, ‘employees’ 테이블의 ‘name’ 필드에서 데이터를 가져올 것이라고 가정해보겠습니다.

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

# 데이터베이스에서 필드 데이터 가져오기
cur.execute("SELECT name FROM employees")

# 모든 데이터 가져오기
rows = cur.fetchall()

이제 ‘rows’ 변수에는 ‘name’ 필드의 모든 데이터가 포함되어 있습니다.

데이터 분할하기

이제 가져온 데이터를 분할해 봅시다. 예를 들어, 이름과 성을 분리하고 싶은 경우입니다.

names = []
surnames = []

for row in rows:
    # 이름과 성 분리
    name, surname = row[0].split(" ")

    # 분리된 데이터를 각각의 리스트에 추가
    names.append(name)
    surnames.append(surname)

이제 ‘names’ 및 ‘surnames’ 리스트에는 분할된 데이터가 저장되어 있습니다.

데이터베이스 연결 종료

작업이 완료되었으면 데이터베이스 연결을 종료해야 합니다.

# 커서 닫기
cur.close()

# 연결 닫기
conn.close()

이제 Psycopg2를 사용하여 데이터베이스 테이블에서 특정 필드의 데이터를 분할하는 방법을 알게 되었습니다.

이 코드는 단순한 예제일 뿐이며, 실제 사용 시 데이터베이스 및 테이블 구조에 맞게 적절히 수정해야 합니다. Psycopg2 문서의 추가 정보를 참조하여 사용법을 확장해보세요.

참고 자료