首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Pandas中使用参数执行SQL查询

如何在Pandas中使用参数执行SQL查询
EN

Stack Overflow用户
提问于 2022-09-15 16:21:46
回答 2查看 29关注 0票数 0

我使用的是pyscopg2,它有一个基于SQL查询的返回列表的方法。下面的操作很好..。

代码语言:javascript
复制
def checkAnalysisStartDate(self):
    session = self.connection()
    cursor = session.cursor()
    ids = self.getAnalysisIds() # this is a list of integers
    cursor.execute("select start_date from analysis_run_history where analysis_id in %s", [tuple(ids)])
    final_result = [i[0] for i in cursor.fetchall()]

我想传递相同的整数列表,但这次从结果返回一个DataFrame。但是当我尝试这个的时候..。

代码语言:javascript
复制
import pandas.io.sql as sqlio

def getAnalysisMetaStatsDF(self):
    session = self.connection()
    ids = self.getAnalysisIds() # this is a list of integers
    data = sqlio.read_sql_query("Select * from analysis_stats where analysis_id in %s", [tuple(ids)], session)
    print(data)   

我回来了..。

代码语言:javascript
复制
AttributeError: 'list' object has no attribute 'cursor'

我认为这与我将参数传递给read_sql_query()的方式有关,但我不知道如何修复它

EN

回答 2

Stack Overflow用户

发布于 2022-09-15 17:25:22

每当调用函数时,请确保调用与其签名匹配。您可以通过运行help(sqlio.read_sql_query),在IPython或文档中键入sqlio.read_sql_query?来查找签名。你会发现这样的东西:

代码语言:javascript
复制
Signature:
read_sql_query(
    sql,
    con,
    index_col=None,
    coerce_float: 'bool' = True,
    params=None,
    parse_dates=None,
    chunksize: 'int | None' = None,
    dtype: 'DtypeArg | None' = None,
) -> 'DataFrame | Iterator[DataFrame]'

注意,第二个参数是数据库连接对象,而不是查询的参数。在您的情况下,下面这样的调用更合适:

代码语言:javascript
复制
sqlio.read_sql_query(query_string, session, params = ids)
票数 0
EN

Stack Overflow用户

发布于 2022-09-15 17:39:44

代码语言:javascript
复制
import mysql.connector
from mysql.connector import Error
from sqlalchemy import create_engine
import pandas as pd

engine = create_engine("mysql://root:admin@localhost/pythondb", pool_size=10, max_overflow=20)

table = pd.read_sql("select *From emp", engine)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73734510

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档