División de piso en SQLAlchemy

En este artículo, veremos cómo realizar una división de piso en SQLAlchemy contra una base de datos PostgreSQL en python.

La división del piso se realiza en diferentes métodos usando diferentes funciones. Este tipo de operaciones matemáticas dependen de la base de datos. En PostgreSQL, la división del piso se realiza mediante una función llamada div(). En SQLAlchemy, las funciones genéricas como SUM, MIN, MAX se invocan como funciones SQL convencionales usando el atributo func.

Algunas funciones comunes utilizadas en SQLAlchemy son count, cube, current_date, current_time, max, min, mode, etc.

Uso: func.count(). func.cubo(), func.max()

Creación de tabla para demostración:

Importe las funciones necesarias del paquete SQLAlchemy. Establezca una conexión con la base de datos PostgreSQL usando la función create_engine() como se muestra a continuación. Cree una tabla llamada libros con las columnas book_id y book_price.

Inserte un registro en las tablas usando la función insert() y valores() como se muestra.

Python3

# import necessary packages
from sqlalchemy import (create_engine, MetaData,
Table, Column, Numeric, Integer)
 
# establish connections
engine = create_engine(
    "postgresql+psycopg2://postgres:Saibaba97%40@127.0.0.1:5432/test")
 
# initialize meta data
meta = MetaData()
 
# create a table schema
books = Table(
    'books', meta,
    Column('bookId', Integer, primary_key=True),
    Column('book_price', Numeric),
)
 
meta.create_all(engine)
 
# insert records into the table
statement1 = books.insert().values(bookId=1,
                                   book_price=12.2)
statement2 = books.insert().values(bookId=2,
                                   book_price=13.2)
statement3 = books.insert().values(bookId=3,
                                   book_price=121.6)
statement4 = books.insert().values(bookId=4,
                                   book_price=100)
statement5 = books.insert().values(bookId=5,
                                   book_price=1112.2)
 
# execute the insert records statement
engine.execute(statement1)
engine.execute(statement2)
engine.execute(statement3)
engine.execute(statement4)
engine.execute(statement5)

Producción:

Implementando división de piso en SQLAlchemy

Ahora importe la función func.div() desde sqlalchemy y realice la división del piso como se muestra a continuación

Python3

# import necessary packages
from sqlalchemy import func
 
# pass the sql query statement to
# the execute function
result = engine.execute('SELECT div(book_price,3)\
AS minimum FROM books')
 
# use fetchall() to return all result
result.fetchall()

Producción:

Publicación traducida automáticamente

Artículo escrito por jssuriyakumar 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 *