Mit der Pandas read_sql-Funktion können Sie SQL-Abfragen ausführen und Daten aus einer Datenbank abrufen. Eine seiner Funktionen ist die Möglichkeit, Parameter an die Abfrage zu übergeben.
Parameter können als Liste, Tupel oder Diktat übergeben werden. Die genaue Syntax hängt vom verwendeten Datenbanktreiber ab. Hier sind einige gängige Beispiele:
Eine Möglichkeit zur Übergabe von Parametern ist die Verwendung eines Wörterbuchs. Dies wird von den meisten Treibern unterstützt, einschließlich PostgreSQL mit dem psycopg2-Treiber. Die Schlüssel-Wert-Paare im Wörterbuch entsprechen den benannten Platzhaltern in der Abfrage.
Um den Ansatz mit benannten Argumenten zu veranschaulichen, betrachten wir die folgende SQL-Abfrage:
select "Timestamp", "Value" from "MyTable"
where "Timestamp" BETWEEN :dstart AND :dfinish
So würden Sie mithilfe eines Wörterbuchs Parameter an diese Abfrage übergeben:
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=params,
index_col=["Timestamp"],
)
In diesem Beispiel stellt das Params-Wörterbuch Werte für die benannten Platzhalter :dstart und :dfinish bereit. Die %(name)s-Syntax stellt sicher, dass die Werte korrekt in die Abfrage eingefügt werden.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3