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