Pandas 允许在执行 SQL 查询时传递参数,使用 read_sql()
函数。
参数可以作为列表、元组或字典传递。但是,支持的语法取决于所使用的数据库驱动程序。
此方法涉及在 SQL 查询中使用 %s
占位符或问号 ?
。参数作为列表或元组传递,其顺序与其在查询中的出现顺序一致。
<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>
使用字典参数时,字典中的键值对对应于 SQL 查询中的参数名称。查询中的参数名称应使用 %(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>
建议在 Pandas 中使用 SQL 查询传递参数的语法是使用命名参数(字典)或位置参数(列表或元组),具体取决于数据库驱动程序支持的语法。
以上是如何在 Pandas 中使用 SQL 查询参数?的详细内容。更多信息请关注PHP中文网其他相关文章!