pandas.read_sql_query #

熊猫。read_sql_query ( sql , con , index_col = None , coerce_float = True , params = None , parse_dates = None , chunksize = None , dtype = None , dtype_backend = _NoDefault.no_default ) [来源] #

将 SQL 查询读入 DataFrame。

返回与查询字符串的结果集对应的DataFrame。可以选择提供一个index_col参数以使用其中一列作为索引,否则将使用默认的整数索引。

参数
sql str SQL 查询或 SQLAlchemy 可选(选择或文本对象)

要执行的 SQL 查询。

con SQLAlchemy 可连接、str 或 sqlite3 连接

使用 SQLAlchemy 可以使用该库支持的任何数据库。如果是 DBAPI2 对象,则仅支持 sqlite3。

index_col str 或 str 列表,可选,默认值:无

设置为索引的列(MultiIndex)。

coerce_float bool, 默认 True

尝试将非字符串、非数字对象(如decimal.Decimal)的值转换为浮点数。对于 SQL 结果集很有用。

参数列表、元组或映射,可选,默认值:无

要传递给执行方法的参数列表。用于传递参数的语法取决于数据库驱动程序。检查数据库驱动程序文档,了解支持 PEP 249 的 paramstyle 中描述的五种语法样式中的哪一种。例如。对于 psycopg2,使用 %(name)s 因此使用 params={'name' : 'value'}。

parse_dates列表或字典,默认值:无
  • 要解析为日期的列名称列表。

  • 格式字符串的字典在解析字符串时间的情况下与 strftime 兼容,或者在解析整数时间戳的情况下是 (D, s, ns, ms, us) 之一。{column_name: format string}

  • Dict of ,其中 arg dict 对应于关键字参数 对于没有本机日期时间支持的数据库(例如 SQLite)特别有用。{column_name: arg dict}pandas.to_datetime()

chunksize int,默认无

如果指定,则返回一个迭代器,其中chunksize是每个块中包含的行数。

dtype类型名称或列的字典

数据或列的数据类型。例如 np.float64 或 {'a': np.float64, 'b': np.int32, 'c': 'Int64'}。

1.3.0 版本中的新增功能。

dtype_backend {'numpy_nullable', 'pyarrow'}, 默认 'numpy_nullable'

应用于结果的后端数据类型DataFrame (仍处于试验阶段)。行为如下:

  • "numpy_nullable":返回 nullable-dtype-backed DataFrame (默认)。

  • "pyarrow":返回 pyarrow 支持的可为空的ArrowDtype DataFrame。

2.0版本中的新增内容。

返回
数据帧或迭代器[数据帧]

也可以看看

read_sql_table

将 SQL 数据库表读入 DataFrame。

read_sql

将 SQL 查询或数据库表读入 DataFrame。

笔记

通过parse_dates参数解析的带有时区信息的任何日期时间值都 将转换为 UTC。

例子

>>> from sqlalchemy import create_engine  
>>> engine = create_engine("sqlite:///database.db")  
>>> with engine.connect() as conn, conn.begin():  
...     data = pd.read_sql_table("data", conn)