Maison > base de données > tutoriel mysql > Comment puis-je utiliser des paramètres avec des requêtes SQL dans Pandas ?

Comment puis-je utiliser des paramètres avec des requêtes SQL dans Pandas ?

Barbara Streisand
Libérer: 2025-01-18 07:16:10
original
463 Les gens l'ont consulté

How Can I Use Parameters with SQL Queries in Pandas?

Utilisation des paramètres de requête SQL dans Pandas

Pandas permet de transmettre des paramètres lors de l'exécution de requêtes SQL, à l'aide de la fonction read_sql().

Syntaxe de passage des paramètres

Les paramètres peuvent être transmis sous forme de liste, de tuple ou de dictionnaire. Toutefois, la syntaxe prise en charge dépend du pilote de base de données utilisé.

Paramètres de liste ou de tuple

Cette méthode consiste à utiliser l'espace réservé %s ou le point d'interrogation ? dans la requête SQL. Les paramètres sont transmis sous forme de liste ou de tuple, dans le même ordre qu'ils apparaissent dans la requête.

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

Paramètres du dictionnaire

Lors de l'utilisation de paramètres de dictionnaire, les paires clé-valeur du dictionnaire correspondent aux noms de paramètres dans la requête SQL. Les noms de paramètres dans les requêtes doivent utiliser la syntaxe %(name)s.

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

Syntaxe suggérée

La syntaxe recommandée pour transmettre des paramètres à l'aide de requêtes SQL dans Pandas est d'utiliser des paramètres nommés (dict) ou des paramètres de position (liste ou tuple), selon la syntaxe prise en charge par le pilote de base de données.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal