Maison >base de données >tutoriel mysql >Comment transmettre les paramètres du dictionnaire aux Pandas `read_sql` pour les requêtes SQL ?

Comment transmettre les paramètres du dictionnaire aux Pandas `read_sql` pour les requêtes SQL ?

Barbara Streisand
Barbara Streisandoriginal
2025-01-18 07:32:08524parcourir

How to Pass Dictionary Parameters to Pandas `read_sql` for SQL Queries?

Utilisez Pandas read_sql pour transmettre les paramètres de la requête SQL

Lors de l'interrogation d'une base de données à partir de Pandas à l'aide de SQLAlchemy, vous devez souvent transmettre des paramètres à la requête SQL. Alors que la documentation recommande d'utiliser des listes de paramètres ou des tuples, cet article explore la faisabilité de l'utilisation d'un dictionnaire.

Plus précisément, la question est de savoir quelle est la syntaxe recommandée pour transmettre les paramètres de requête SQL de Pandas à l'aide d'un dictionnaire.

Utiliser les paramètres nommés

Selon la documentation read_sql, les paramètres peuvent être transmis sous forme de liste, de tuple ou de dictionnaire. Cependant, la syntaxe de transmission des valeurs dans les requêtes SQL dépend du pilote de base de données utilisé.

Pour PostgreSQL utilisant le pilote psycopg2, les paramètres nommés sont pris en charge à l'aide du style %(name)s. Voici un exemple :

<code class="language-python">df = psql.read_sql(('select "Timestamp", "Value" from "MyTable" '
                     'where "Timestamp" BETWEEN %(dstart)s AND %(dfinish)s'),
                   db,
                   params={"dstart": datetime(2014, 6, 24, 16, 0), "dfinish": datetime(2014, 6, 24, 17, 0)},
                   index_col=["Timestamp"])</code>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn