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

Python으로 MySQL 테이블 열에서 산술 연산 수행하기

산술 연산(arithmetic operation)은 이름 그대로 덧셈, 뺄셈, 나눗셈, 곱셈, 나머지 연산(modulus)과 같은 계산을 수행하는 데 사용됩니다. 이러한 산술 연산은 테이블에 저장된 숫자 데이터를 대상으로 동작합니다.

기본 문법

덧셈을 수행하려면 다음과 같이 작성합니다.

SELECT op1+op2 FROM table_name

여기서 op1과 op2는 열 이름 또는 숫자 값입니다. 만약 op1과 op2가 모두 단순한 숫자 값이라면 FROM 절은 생략할 수 있습니다.

위 문법의 + 기호를 -, *, %, /로 바꾸면 다른 산술 연산도 동일한 방식으로 수행할 수 있습니다.

Python에서 MySQL로 산술 연산을 수행하는 절차

  • MySQL 커넥터(mysql.connector)를 임포트합니다.

  • connect() 메서드를 사용하여 데이터베이스와 연결을 설정합니다.

  • cursor() 메서드로 커서 객체를 생성합니다.

  • 적절한 MySQL 문법으로 쿼리를 작성합니다.

  • execute() 메서드를 사용하여 SQL 쿼리를 실행합니다.

  • 작업이 끝나면 연결을 종료합니다.

예를 들어, 다음과 같은 "Sales"라는 이름의 테이블이 있다고 가정해 보겠습니다.

+------------+---------+
| sale_price |   tax   |
+------------+---------+
|    1000    | 200     |
|    500     | 100     |
|    50      | 50      |
|    180     | 180     |
+------------+---------+

예제 코드

sale_price와 tax 두 열의 값을 더하여 총 금액(amount)을 계산해야 한다고 가정합니다. 아래 코드는 두 열을 합산한 결과를 amount라는 별칭으로 출력합니다.

import mysql.connector

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

cursor = db.cursor()

query = "SELECT sale_price, tax, concat(sale_price+tax) AS amount FROM Sales"
cursor.execute(query)

rows = cursor.fetchall()

for row in rows:
    print(row)

db.close()

실행 결과

('sale_price', 'tax', 'amount')
(1000, 200, 1200)
(500, 100, 600)
(50, 50, 100)
(180, 180, 360)

위 예제에서는 테이블의 두 열에 대해 산술 덧셈이 수행되었습니다. 같은 방식으로 필요에 따라 뺄셈, 곱셈, 나눗셈, 나머지 연산 등 다른 산술 연산도 자유롭게 적용할 수 있습니다.