You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

pandas read_sql_table无nrows参数 如何限制读取指定行数

解决方案

有两种常用实现方式,按需选择即可:

方案1:使用read_sql_query配合SQL LIMIT语句(更推荐)

直接在查询层面限制返回行数,性能最优,不会扫描全表:

# MySQL/PostgreSQL/SQLite等常用数据库写法,不同数据库LIMIT语法可对应调整
query = f"SELECT {','.join(cols)} FROM {schema_z2}.table LIMIT 100"
df['table'] = pd.read_sql_query(query, engine)

如果使用SQL Server,将LIMIT 100替换为TOP 100放在SELECT后即可;如果使用Oracle,可添加条件WHERE ROWNUM <=100实现行数限制。

方案2:用chunksize参数直接取第一块

如果不想写原生SQL,也可以设置chunksize为你需要的行数,直接取迭代器的第一个元素即可:

df['table'] = next(pd.read_sql_table('table', engine, schema=schema_z2, columns=cols, chunksize=100))

这种方式本质上只会拉取前100行数据,不会读取全表。

内容的提问来源于stack exchange,提问作者x89

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 05:06:04