Python pandas.read_sql_query()常用操作方法代码

Python 的 pandas 库中,read_sql_query() 函数是一种非常有用的方法,它允许你直接从数据库执行 SQL 查询并将结果作为 DataFrame 对象返回。以下是一些使用 pandas.read_sql_query() 的常见操作方法的示例代码。

基本使用

首先,你需要安装必要的库(如果尚未安装的话):

pip install pandas sqlalchemy

然后,你可以用以下步骤来执行一个基本的 SQL 查询:

import pandas as pd
from sqlalchemy import create_engine

# 创建数据库连接
engine = create_engine('sqlite:///your_database.db')  # SQLite 示例

# 使用 read_sql_query() 执行查询
query = "SELECT * FROM your_table"
df = pd.read_sql_query(query, engine)

print(df)

参数配置

read_sql_query() 函数提供了几个参数,可以根据需要进行配置:

  • sql: SQL 查询字符串或者 SQLAlchemy Selectable(如 SQL Expression Language 表达式)。
  • con: 数据库连接对象,可以是 SQLAlchemy 连接引擎/连接对象或者 SQLite3 连接。
  • index_col: 用作结果 DataFrame 的索引列的列名或列的列表。
  • coerce_float: 将数值解析为浮点数,默认为 True
  • params: 传递给 SQL 查询的参数,可以是列表、字典或元组。
  • parse_dates: 指定应该被解析为日期的列。
  • chunksize: 分块的行数,返回可迭代对象。

使用参数

例如,你可以使用参数来传递数据,这有助于防止 SQL 注入:

query = "SELECT * FROM your_table WHERE id = :id"
df = pd.read_sql_query(query, engine, params={"id": 1})
print(df)

解析日期

如果你的数据中包含日期,并且你想在读取时将其解析为日期类型:

query = "SELECT id, date_column FROM your_table"
df = pd.read_sql_query(query, engine, parse_dates=['date_column'])
print(df)

使用 chunksize

当处理大型数据库时,你可能想要分批次处理数据:

query = "SELECT * FROM your_table"

# 使用 chunksize
for chunk in pd.read_sql_query(query, engine, chunksize=100):
    print(chunk)  # 每个 chunk 是一个 DataFrame


参考文档:Python pandas.read_sql_query()常用操作方法代码-CJavaPy

 

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值