Suma varias columnas en SQLAlchemy

En este artículo, vamos a sumar varias columnas y obtener resultados usando el módulo SQLAlchemy de python.

Instalación

Para instalar el módulo SQLAlchemy, ejecute el siguiente comando en su terminal:

pip install sqlalchemy pymysql

Nota: pymysql es una dependencia de SQLAlchemy que debemos instalar para esta publicación.

Entonces, lo que vamos a hacer es, en primer lugar, nos conectaremos con la base de datos usando el módulo SQLAlchemy, y luego, usando nuestras habilidades de SQL y python, necesitamos sumar valores de varias columnas y obtener resultados.

Base de datos utilizada:

Entonces, para esta publicación, averiguaremos el puntaje total obtenido por todos los jugadores. Y podemos hacerlo sumando las columnas «puntuación1», «puntuación2» y «puntuación3» de la tabla del jugador.

Método 1: Primero, necesitamos crear una conexión con nuestra base de datos usando SQLAlchemy. Luego ejecutaremos una consulta “SELECT” sobre la tabla y dentro de ella agregaremos las columnas. Y finalmente, buscaremos el resultado.

La consulta SQL se verá así:

SELECT column1 + column2 + .... + columnN  FROM table_name;

Puede agregar cualquier no. de columnas que desee. Solo especifíquelos de la manera anterior.

El código de Python se verá así:

Python3

from sqlalchemy import create_engine
  
user, password, host, database = 'root', '123', 'localhost', 'geeksforgeeks'
engine = create_engine(
    url=f'mysql+pymysql://{user}:{password}@{host}/{database}?charset=utf8')
  
connection = engine.connect()
  
table_name = 'players'
column1 = 'score1'
column2 = 'score2'
column3 = 'score3'
  
result = connection.execute(
    f'SELECT {column1} + {column2} + {column3} FROM {table_name}')
  
for value in result:
      sum_value = value[0]
    print("Sum : ",sum_value)

Método 2: otra forma de hacer la misma tarea es ejecutar una consulta normal «SELECCIONAR» y mencionar todas las columnas que queremos agregar dentro de la consulta. Luego buscaremos el resultado y ejecutaremos un bucle for en él. El elemento del resultado será una tupla que contenga los valores de todas las columnas de una sola fila, y los sumaremos para obtener el total de ellos.

La consulta SQL se verá así:

SELECT column1 , column2 , .... , columnN FROM table_name;

Ejemplo:

Python3

from sqlalchemy import create_engine
  
user, password, host, database = 'root', '123', 'localhost', 'geeksforgeeks'
engine = create_engine(
    url=f'mysql+pymysql://{user}:{password}@{host}/{database}?charset=utf8')
  
connection = engine.connect()
  
table_name = 'players'
  
column1 = 'score1'
column2 = 'score2'
column3 = 'score3'
  
result = connection.execute(
    f'SELECT {column1} , {column2} , {column3} FROM {table_name}')
  
for value in result:
    print("Values of one row :", value)
    sum_value = sum(value)
    print("Sum : ", sum_value)

Publicación traducida automáticamente

Artículo escrito por mycodenotein y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *