Python es un lenguaje dinámico y las aplicaciones de Python se pueden integrar con servidores de bases de datos. El módulo utilizado para acceder a una base de datos MySQL desde Python es MySQL Connector Python . PyMySQL, MySQLDB y mysqlclient son otros módulos de Python para comunicarse con un servidor de base de datos MySQL en Python. Sin embargo, usaremos MySQL Connector Python en este artículo porque es una API escrita exclusivamente en Python, lo que significa que no tiene dependencias y solo requiere la biblioteca estándar.
Para realizar operaciones aritméticas en datos de columnas, MySQL tiene operadores aritméticos. Estos operadores son útiles para realizar cálculos en sus datos. Los operadores aritméticos en MySQL son los siguientes:
Operación | Operador aritmético de MySQL | Sintaxis en MySQL |
Suma |
+ |
SELECCIONE op1 + op2 DESDE tablename ; |
Sustracción |
– |
SELECCIONE op1 – op2 DESDE tablename; |
División |
/ |
SELECCIONE op1 / op2 DESDE tablename; |
Multiplicación |
* |
SELECCIONE op1 * op2 DESDE tablename; |
Módulo |
% |
SELECCIONE op1 % op2 DESDE tablename; |
En la tabla anterior, op1 y op2 pueden ser nombres de columna o valores numéricos (en cuyo caso no se requiere la cláusula «from»). Los siguientes programas le ayudarán a comprender mejor el uso de estos operadores.
Base de datos en uso:
Usaremos una tabla de información de productos en nuestros programas. Consiste en el nombre del producto, su precio de costo, precio de venta, impuestos y la cantidad comprada.
Ejemplo 1: uso del operador de suma
Python3
# Import required packages import mysql.connector # Establish connection to MySQL database mydb = mysql.connector.connect( host = "localhost", user = "username", password = "geeksforgeeks", database = "grocery" ) # MySQLCursorDict creates a cursor # that returns rows as dictionaries mycursor = mydb.cursor( dictionary = True ) # MySQL query for getting total # sale amount (i.e. selling price + tax) query = "SELECT Selling_price, \ tax, \ concat(Selling_price + tax) AS sale_amount \ FROM product" # Execute the query mycursor.execute( query ) # Fetch result of query myresult = mycursor.fetchall() # Print result of query print(f"SP \t Tax \t Sale Amount") for row in myresult: # Each value printed for display purpose (you can simply print row) print(f"{ row[ 'Selling_price' ]} \t { row[ 'tax' ]} \t { row[ 'sale_amount' ]}") mydb.close()
Producción:
Ejemplo 2: Uso del operador de resta.
Python3
# Import required packages import mysql.connector # Establish connection to MySQL database mydb = mysql.connector.connect( host = "localhost" , user = "username" , password = "geeksforgeeks" , database = "grocery" ) # MySQLCursorDict creates a cursor # that returns rows as dictionaries mycursor = mydb.cursor(dictionary = True ) # MySQL query for getting profit # (i.e. selling price - cost price) query = "SELECT selling_price, \ cost_price, \ concat(selling_price - cost_price) AS profit \ FROM product_info" # Execute the query mycursor.execute( query ) # Fetch result of query myresult = mycursor.fetchall() # Print result of query print(f"SP \t CP \t Profit") for row in myresult: print(f"{ row[ 'selling_price' ]} \t { row[ 'cost_price' ]} \t { row[ 'profit' ]}") mydb.close()
Producción:
Ejemplo 3: uso del operador de multiplicación
Python3
# Import required packages import mysql.connector # Establish connection to MySQL database mydb = mysql.connector.connect( host = "localhost" , user = "username" , password = "geeksforgeeks" , database = "grocery" ) # MySQLCursorDict creates a cursor that returns rows as dictionaries mycursor = mydb.cursor(dictionary = True) # MySQL query for getting total amount (i.e. sale amount * quantity) query = "SELECT selling_price, \ tax, \ concat((selling_price * tax)) AS total_amount \ FROM product_info" # Execute the query mycursor.execute( query ) # Fetch result of query myresult = mycursor.fetchall() # Print result of query print(f"SP \t Tax \t Total") for row in myresult: print(f"{row[ 'selling_price' ]} \t { row[ 'tax' ]}\t{row['total_amount']}") # Close database connection mydb.close()
Producción:
Ejemplo 4: Uso del operador de división.
Python3
# Import required packages import mysql.connector # Establish connection to MySQL database mydb = mysql.connector.connect( host = "localhost" , user = "username" , password = "geeksforgeeks" , database = "grocery" ) # MySQLCursorDict creates a cursor # that returns rows as dictionaries mycursor = mydb.cursor( dictionary = True ) # MySQL query for getting halved selling price of all products query = "SELECT selling_price, \ concat(selling_price / 2) AS discount_price \ FROM product_info" # Execute the query mycursor.execute( query ) # Fetch result of query myresult = mycursor.fetchall() # Print result of query print(f"SP \t Discounted Price") for row in myresult: print(f"{ row[ 'selling_price' ]} \t { row ['discount_price']}") # Close database connection mydb.close()
Producción:
Ejemplo 5: Uso del operador módulo.
Python3
# Import required packages import mysql.connector # Establish connection to MySQL database mydb = mysql.connector.connect( host = "localhost" , user = "username" , password = "geeksforgeeks" , database = "grocery" ) # MySQLCursorDict creates a cursor # that returns rows as dictionaries mycursor = mydb.cursor(dictionary = True) # MySQL query for getting remainder query = "SELECT selling_price, \ cost_price, \ concat(selling_price % cost_price) AS mod_example \ FROM product_info" # Execute the query mycursor.execute( query ) # Fetch result of query myresult = mycursor.fetchall() # Print result of query print(f"SP \t Qnty \t MOD") for row in myresult: print(f"{ row [ 'selling_price' ]} \t { row [ 'cost_price' ]} \t{row[ 'mod_example' ]}") # Close database connection mydb.close()
Producción:
Publicación traducida automáticamente
Artículo escrito por akshisaxena y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA