如何使用 Pandas read_sql 傳遞參數?

DDD
發布: 2024-11-01 22:42:02
原創
122 人瀏覽過

How to Pass Parameters with Pandas read_sql?

使用 Pandas read_sql 傳遞參數

概述

Pandas read_sql 函數可讓您執行 SQL 查詢並從資料庫檢索資料。它的功能之一是能夠將參數傳遞給查詢。

參數語法

參數可以作為列表、元組或字典傳遞。確切的語法取決於所使用的資料庫驅動程式。以下是一些常見範例:

  • ?或%s:單一值的佔位符
  • :1 或:name:單一值的命名佔位符
  • %(name)s:使用string.format 語法的命名佔位符

使用帶有命名參數的字典

傳遞參數的一個選項是使用字典。大多數驅動程式都支援這一點,包括 psycopg2 驅動程式的 PostgreSQL。字典中的鍵值對對應於查詢中的命名佔位符。

範例

為了示範命名參數方法,讓我們考慮以下SQL 查詢:

<code class="sql">select "Timestamp", "Value" from "MyTable"
where "Timestamp" BETWEEN :dstart AND :dfinish</code>
登入後複製

以下是如何使用字典將參數傳遞給此查詢:

<code class="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=params,
    index_col=["Timestamp"],
)</code>
登入後複製

在此範例中,params 字典為命名佔位符:dstart 和:dfinish 提供值。 %(name)s 語法確保將值正確插入查詢中。

以上是如何使用 Pandas read_sql 傳遞參數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!