"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo pasar los parámetros a pandas read_sql con consultas SQL?

¿Cómo pasar los parámetros a pandas read_sql con consultas SQL?

Publicado el 2025-03-04
Navegar:257

How to Pass Parameters to pandas read_sql with SQL Queries?

pandas read_sql con consultas sql parametrizadas

la función pandas.read_sql es una herramienta poderosa para obtener datos de las bases de datos. Cuando se trabaja con los motores SQLalchemy, es crucial pasar de manera efectiva los parámetros a sus consultas SQL. Esta guía demuestra dos enfoques comunes: parámetros posicionales y nombrados.

método 1: parámetros posicionales

Este método utiliza una lista o tupla para suministrar parámetros a su consulta SQL. Los marcadores de posición en la instrucción SQL (%s ) son reemplazados secuencialmente por los elementos en la lista de parámetros.

Ejemplo:

import pandas as pd
from datetime import datetime

# ... (database connection setup using SQLAlchemy) ...

query = ('SELECT "Timestamp", "Value" FROM "MyTable" '
         'WHERE "Timestamp" BETWEEN %s AND %s')
params = [datetime(2014, 6, 24, 16, 0), datetime(2014, 6, 24, 17, 0)]

df = pd.read_sql(query, db, params=params, index_col=['Timestamp'])

Método 2: parámetros con nombre

Los parámetros con nombre ofrecen una mejor legibilidad y mantenimiento. Sin embargo, la sintaxis compatible depende de su controlador de base de datos. Con sqlalchemy y psyCopg2, la sintaxis %(name) s es necesaria.

Ejemplo:

import pandas as pd
from datetime import datetime

# ... (database connection setup using SQLAlchemy) ...

query = ('SELECT "Timestamp", "Value" FROM "MyTable" '
         'WHERE "Timestamp" BETWEEN %(dstart)s AND %(dfinish)s')
params = {"dstart": datetime(2014, 6, 24, 16, 0), "dfinish": datetime(2014, 6, 24, 17, 0)}

df = pd.read_sql(query, db, params=params, index_col=['Timestamp'])

Nota importante: Siempre verifique la documentación del controlador de su base de datos para confirmar la sintaxis del parámetro correcto. El uso de la sintaxis incorrecta conducirá a errores de consulta. Esto garantiza que sus consultas parametrizadas se ejecuten de manera correcta y segura.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3